jmeter_extra_tool

@(Jmeter)[工具类|自定义函数|软件测试]

jmeter_extra_tool是一个专为Jmeter服务的常用工具类和自定义函数集。为日常的测试工作带来方便。

  • com.tomoya.jmeter

    • Tool类:包含获取MD5值、获取中文名、JDBC结果写入文件等方法、数组写入Excel等方法
    • RSA类:包含公钥加密、私钥解密;私钥加密、公钥解密等方法
    • Excel类:包含覆盖写入和单行追加写入Excel文件的方法
  • com.tomoya.functions

  • jmeter_extra_tool

    • 项目结构

      • com.tomoya.jmeter
      • com.tomoya.functions
    • 发布版下载
      • jmeter_extra_tool-v1.0.jar
      • jmeter_extra_tool-v1.1.jar
    • 使用方法
      • Tool类
      • Excel类
      • 自定义函数
    • 代码块
      • 自定义函数示例
    • 更新历史
    • 开源地址
    • 反馈与建议

项目结构

com.tomoya.jmeter

  • com.tomoya.jmeter

    • com.tomoya.jmeter.Tool

      • getChineseName()
        获取2~4个字的中文名,常用字版(名字为五个笔画以内)
      • getMD5(String)
        返回32位md5值
      • getHashCode(String)
        返回HashCode值
      • writeFile(String, String)
        字符串写入文件
      • JDBCResultWriteFile(ArrayList, String, String)
        Jmeter的JDBC Result中指定列,写入文件
      • JDBCResultWriteFile(ArrayList, String[], String)
        Jmeter的JDBC Result中指定多列,写入文件
    • com.tomoya.jmeter.RSA
      • pubKeyEncrypt(String, String)
        使用公钥进行加密,返回公钥密文
      • priKeyDecrypt(String, String)
        传入公钥密文,使用私钥进行解密,返回明文
      • priKeyEncrypt(String, String)
        使用私钥进行加密,返回私钥密文
      • pubKeyDecrypt(String, String)
        传入私钥密文,使用公钥进行解密,返回明文
    • com.tomoya.jmeter.Excel
      • writeToExcel(String[], String[], String)
        传入标题、单行数据源、文件地址,追加写入Excel文件
      • writeToExcel2(String[], List String)
        传入标题、数据集、文件地址,复写整个Excel文件

com.tomoya.functions

  • com.tomoya.functions

    • com.tomoya.functions.MD5

      • execute(SampleResult, Sampler)
        return 函数运行结果
      • getArgumentDesc()
        return 参数描述
      • getReferenceKey()
        return 函数名
      • setParameters(Collection<>)
        传入Jmeter中用户输入的参数
    • HashCode
    • ChineseName

发布版下载

jmeter_extra_tool-v1.0.jar

点击进入下载页面

jmeter_extra_tool-v1.1.jar

点击进入下载页面

Apache POI (下载后把所有jar包copy到Jmeter安装路径的/lib/ext目录下)

使用方法

Tool类

将编译出来的jar包放入Jmeter的/lib/ext路径下,重新启动Jmeter。在BeanShell类型组件中 import com.tomoya.jmeter.*; 就可以调用Tool类和RSA类中的方法了。

Excel类

将编译出来的jar包和下载的Apache POI 所有jar包放入Jmeter的/lib/ext路径下,重新启动Jmeter。在BeanShell类型组件中 import com.tomoya.jmeter.*; 就可以调用Excel类中的方法了。

自定义函数

将编译出来的jar包放入Jmeter的/lib/ext路径下,重新启动Jmeter。你将会在你的函数助手对话框中找到它们。本人定义的是以一个下划线“_”为前缀。

代码块

自定义函数示例

注意:编写Jmeter自定义函数时,包名必须包含”functions“。导入ApacheJMeter_core.jar文件到你的项目中。最后导出的jar包放在/lib/ext目录下。

package com.tomoya.functions;import java.util.Collection;
import java.util.LinkedList;
import java.util.List;
import java.util.Random;import org.apache.jmeter.engine.util.CompoundVariable;
import org.apache.jmeter.functions.AbstractFunction;
import org.apache.jmeter.functions.InvalidVariableException;
import org.apache.jmeter.samplers.SampleResult;
import org.apache.jmeter.samplers.Sampler;import com.tomoya.jmeter.Tool;/*** FileName: MD5.java Jmeter自定义函数,获取MD5值* 包名必须包含"functions",导出的jar包放在/lib/ext目录下* * @author tomoya* @version v1.0*/
public class MD5 extends AbstractFunction {/** 函数描述 */private static final List<String> desc = new LinkedList<String>();static {// desc.add("Get a MD5 String within specified parameter value.");desc.add("明文");}/** 函数名称 */private static final String FUNCTION_NAME = "_MD5";/** 传入参数的最小数量 */private static final int MIN_PARA_COUNT = 1;/** 传入参数的最大数量 */private static final int MAX_PARA_COUNT = 1;/** 函数接收值 */private Object[] values;/*** 函数算法* @return 函数运算结果*/private String run() {String str = new String(((CompoundVariable) values[0]).execute().trim());String MD5 = Tool.getMD5(str);return String.valueOf(MD5);} /*** 返回参数描述*/@Overridepublic List<String> getArgumentDesc() {return desc;}/*** 返回函数运行结果*/@Overridepublic String execute(SampleResult previousResult, Sampler currentSampler) throws InvalidVariableException {try {return run();} catch (Exception ex) {throw new InvalidVariableException(ex);}}/*** 返回函数名*/@Overridepublic String getReferenceKey() {return FUNCTION_NAME;}/*** 返回输入参数*/@Overridepublic void setParameters(Collection<CompoundVariable> parameters) throws InvalidVariableException {checkParameterCount(parameters, MIN_PARA_COUNT, MAX_PARA_COUNT); // 检查参数的个数是否正确values = parameters.toArray(); // 将值存入类变量中}}

更新历史

版本 日期 备注
v1.0 2017-10-07 建立
v1.1 2017-10-25 新增Excel类(依赖Apache POI)

开源地址

  • coding.net:https://github.com/tomoyachen/jmeter_extra_tool

反馈与建议

  • 博客:@tomoya_chen
  • 邮箱:tomoya_chen@163.com

感谢阅读这份帮助文档。本人还是刚入门的初学者,如果有反馈和建议请不吝赐教!

jmeter_extra_tool v1.1相关推荐

  1. tensorflow兼容处理 tensorflow.compat.v1 tf.contrib

    20201130 问题提出: v1版本中tensorflow中contrib模块十分丰富,但是发展不可控,因此在v2版本中将这个模块集成到其他模块中去了.在学习tensorflow经常碰到tf.con ...

  2. ImportError: No module named tensorflow.compat.v1 忽略已经安装的某个包版本 忽略已安装版本...

    ImportError: No module named tensorflow.compat.v1 版权声明:本文为博主原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声 ...

  3. YOLO v1到YOLO v4(下)

    YOLO v1到YOLO v4(下) Faster YOLO使用的是GoogleLeNet,比VGG-16快,YOLO完成一次前向过程只用8.52 billion 运算,而VGG-16要30.69bi ...

  4. YOLO v1到YOLO v4(上)

    YOLO v1到YOLO v4(上) 一. YOLO v1 这是继RCNN,fast-RCNN和faster-RCNN之后,rbg(RossGirshick)针对DL目标检测速度问题提出的另外一种框架 ...

  5. Farseer.net轻量级ORM开源框架 V1.x 入门篇:新版本说明

    导航 目   录:Farseer.net轻量级ORM开源框架 目录 上一篇:没有了 下一篇:Farseer.net轻量级ORM开源框架 V1.x 入门篇:数据库配置 前言 V1.x版本终于到来了.本次 ...

  6. Microsoft Anti-Cross Site Scripting Library V1.5 发布了

    Microsoft Anti-Cross Site Scripting Library V1.5 发布了 微软反跨站攻击脚本库 v1.5.此下载包含Microsoft Application Secu ...

  7. Kinect V1读取图像数据(For Windows)

    Kinect V1读取图像数据(For Windows) 这篇博客 Kinect V1介绍 数据读取的基本流程 运行代码和注释 结尾 这篇博客  刚好有一台现成的Kinect V1相机,所以就拿过来学 ...

  8. 基于FPGA实现的MobileNet V1,FPGA深度学习加速器设计 CNN Accelerators based on FPGAs

    Automatic Generation of Multi-precision Multi-arithmetic CNN Accelerators for FPGAs 最近arXiv上挂出来一篇文章, ...

  9. 面向Mobile device的CNN模型手工设计与NAS分析总结,MobileNet V1,V2,V3,Efficient,MNasNet以及Efficient network design

    手工方法和NAS的高效网络模型设计总结与分析 这篇文章主要关注对于移动端,资源受限平台的高效神经网络设计(Manually)和搜索(NAS). ​​​​​​高效的CNN设计不只是用在服务器,云端,资源 ...

最新文章

  1. jQuery Ajax 实例 全解析(转)
  2. 再读《精通css》06:背景图片
  3. git 内网搭建_搭建GitLab(Github) 简易教程
  4. java的引用传递_Java的值传递和引用传递
  5. ubuntu16.04将普通用户提升至root权限
  6. python3num='0123456789,num「:6:-1」=gt; '987'?「1:6:-1」为空
  7. pycharm 的version controller
  8. 如何赛筛选出多列内容相同的数据??
  9. linux安装vim plug, vim-plug 的安装和使用
  10. Controller数据导出Excel 详细教程——easypoi-base,easypoi-web,easypoi-annotation
  11. mysql异地增量备份工具_利用 xtrabackup 工具实现增量备份 mysql(附脚本)
  12. 用Python爬取3万多条评论,看韩国人如何评价电影《寄生虫》?
  13. 通过jQuery的attr修改onclick
  14. JAVA练习173-幂集
  15. ECG/PPG量测解决方案
  16. Horizontalscrollview
  17. 矩和质心之积分的应用
  18. Excel成神之道-001-数据分列
  19. android 动态改变字体大小
  20. NSSCTF刷题wp——常用编码

热门文章

  1. 用卡诺图进行数字逻辑化简
  2. vs2019编译boost1.55
  3. 「Arm Arch」 总线微架构
  4. Mysql insert into + select 插入语句
  5. linux屏幕滑动效果实现代码,使用swipe方法模拟屏幕滑动与手势密码绘制
  6. 激光安全和光生物安全的深入对比
  7. AndroidR Logd原理
  8. D3D中的网格(Mesh)
  9. 嘉兴桐乡外语提升-剑桥商务英语考试(BEC)日程
  10. 外贸公司企业邮箱如何开通?公司邮箱选择哪个好?