Jmeter javaRequest插件开发

1. 适用场景

   Jmeter工具当前支持的协议或协议所支持的传输方式及传输内容不能满足当前项目的测试要求时,就需要根据实际要求手动编写java测试代码(实现对应的Jmeter规范),以插件方式加载到Jmeter中作为一种自定义的取样器执行测试。

2. 开发步骤

   1)新建java工程,引入Jmeter/lib下的jar包及自定义或第三方的jar包到该工程的构建路径中

   2)创建一个类并实现JavaSamplerClient接口或继承AbstractJavaSamplerClient类并且覆写以下四个方法:

public Arguments getDefaultParameters() --设置用户需要传入java程序的参数并制定默认值,在Jmeter中会加载定义的参数且显示设定的默认值

如果用户在jmeter java请求界面中输入了新值,代码中通过JavaSamplerContext对象获取

public void setupTest(JavaSamplerContext arg0)--每个线程测试前执行一次做一些初始化工作

public void teardownTest(JavaSamplerContext arg0)--的每个线程测试结束后调用做一些清理工作

public SampleResult runTest(JavaSamplerContext arg0)--开始测试,从arg0可以获取参数值,编写核心业务逻辑--对数据进行处理封装发送,根据获取到的服务端响应结果对监听器写入数据

3)收集服务器返回结果进行校验并将校验结果写入SampleResult对象

SampleResult对象初始化:

必须在runTest方法中初始化,不能放在setupTest中初始化,否则如果线程组中设置循环次数>1时执行测试Jmeter会报错导致测试无法执行

SampleResult数据写入:

sr.setSuccessful(true);    --请求的状态(是否成功)

sr.setResponseData(res)    --请求的响应数据

 

4)打包并将此jar包放入$JMETER_HOME\lib\ext下

Eclipse-选择项目右键-Export-Runnable JAR file-Extract require libraries into...-Finish

5)打开Jmeter创建线程组添加java请求,在右侧的java请求页面中字段‘类名称’下拉列表中显示步骤4中导入的jar包的包名及类名

package jmeter.hcb.plugin;

public class PerftestForEncrypt2 extends AbstractJavaSamplerClient {

 

 

转载于:https://www.cnblogs.com/unknows/p/8506696.html

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值