第一步: 创建一个maven项目
这一步:网上很多教程,自行查看
第二步:导入依赖包:
<dependency>
<groupId>org.apache.jmeter</groupId>
<artifactId>ApacheJMeter_core</artifactId>
<version>5.3</version>
</dependency>
<dependency>
<groupId>org.apache.jmeter</groupId>
<artifactId>ApacheJMeter_java</artifactId>
<version>5.3</version>
</dependency>
<build>
<finalName>vapeJmeter</finalName>
<plugins>
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-compiler-plugin</artifactId>
<version>3.5.1</version>
<configuration>
<source>1.8</source>
<target>1.8</target>
<encoding>UTF-8</encoding>
</configuration>
</plugin>
</plugins>
</build>
代码:
package com.vape.javasampler;
import org.apache.jmeter.config.Arguments;
import org.apache.jmeter.protocol.java.sampler.AbstractJavaSamplerClient;
import org.apache.jmeter.protocol.java.sampler.JavaSamplerContext;
import org.apache.jmeter.samplers.SampleResult;
/**
*@author created by derrick
*@date 2021年4月19日---下午3:53:05
*@problem
*@answer
*@action
*/
public class SignToken extends AbstractJavaSamplerClient{
private SampleResult results;
private String nickname;
private String pwd;
public void setupTest(JavaSamplerContext arg) {
results = new SampleResult();
results.setSamplerData(toString());
results.setDataType("text");
results.setContentType("text/plain");
results.setDataEncoding("UTF-8");
}
public Arguments getDefaultParameters() {
Arguments params = new Arguments();
params.addArgument("nickname", "derrick");
params.addArgument("pwd", "111111");
return params;
}
@Override
public SampleResult runTest(JavaSamplerContext context) {
results.sampleStart(); // 定义一个事务,事务开始
nickname = context.getParameter("nickname");
pwd =context.getParameter("pwd");
signin(nickname,pwd);
results.sampleEnd(); // 定义一个事务,事务结束
return results;
}
public void signin(String nickname,String pwd) {
results.setResponseCode("UTF-8");
if (pwd.equals("111111")) {
results.setSuccessful(true);
results.setResponseCodeOK();
results.setResponseMessage("success ");
results.setResponseData("{\"Code\":\"10000\",\"Token\":\"WREWRFWFERET34T343453T1LUO198812004\"}","UTF-8");
}else {
results.setResponseCode("500");//http 状态
results.setResponseMessage("user pwd error");
results.setSuccessful(false);
results.setResponseData("{\"Code\":\"9999\",\"Msg\":\"user pwd error \"}","UTF-8");
}
}
public void teardownTest(JavaSamplerContext arg) {
System.out.println("treaddown");
}
}
最后把生成的jar丢到 \lib\ext 目录下,重启jmeter