把需要的jar包 添加到maven依赖中
<?xml version="1.0" encoding="UTF-8"?>
<project xmlns="http://maven.apache.org/POM/4.0.0"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
<modelVersion>4.0.0</modelVersion>
<groupId>MyJmeter</groupId>
<artifactId>MyJmeter</artifactId>
<version>1.0-SNAPSHOT</version>
<properties>
<jmeter.version>3.0</jmeter.version>
</properties>
<dependencies>
<!--jmeter-->
<dependency>
<groupId>org.apache.jmeter</groupId>
<artifactId>ApacheJMeter_core</artifactId>
<version>${jmeter.version}</version>
</dependency>
<dependency>
<groupId>org.apache.jmeter</groupId>
<artifactId>ApacheJMeter_java</artifactId>
<version>${jmeter.version}</version>
</dependency>
</dependencies>
<build>
<plugins>
<!--<plugin>-->
<!--<groupId>org.apache.maven.plugins</groupId>-->
<!--<artifactId>maven-jar-plugin</artifactId>-->
<!--<version>2.4</version>-->
<!--<configuration>-->
<!--<archive>-->
<!--<manifest>-->
<!--<addClasspath>true</addClasspath>-->
<!--<classpathPrefix>lib/</classpathPrefix>-->
<!--<mainClass>etms.TestEtms</mainClass>-->
<!--</manifest>-->
<!--</archive>-->
<!--</configuration>-->
<!--</plugin>-->
<!--<plugin>-->
<!--<groupId>org.apache.maven.plugins</groupId>-->
<!--<artifactId>maven-dependency-plugin</artifactId>-->
<!--<executions>-->
<!--<execution>-->
<!--<phase>package</phase>-->
<!--<goals>-->
<!--<goal>copy-dependencies</goal>-->
<!--</goals>-->
<!--<configuration>-->
<!--<outputDirectory>-->
<!--${project.build.directory}/lib-->
<!--</outputDirectory>-->
<!--</configuration>-->
<!--</execution>-->
<!--</executions>-->
<!--</plugin>-->
</plugins>
</build>
</project>
然后编写代码如下
package com.niu.MyJmeter;
import javafx.scene.shape.ArcTo;
import org.apache.jmeter.config.Arguments;
import org.apache.jmeter.protocol.java.sampler.JavaSamplerClient;
import org.apache.jmeter.protocol.java.sampler.JavaSamplerContext;
import org.apache.jmeter.samplers.SampleResult;
import org.apache.xmlbeans.impl.xb.xsdschema.impl.PublicImpl;
/**
* Created by Administrator on 2017/8/30 0030.
*/
public class JmeterTest implements JavaSamplerClient {
private String interfaceName;
private String methodName;
@Override
public void setupTest(JavaSamplerContext javaSamplerContext) {
//某种连接只连接一次,例如数据库
System.out.print("测试开始");
}
@Override
public SampleResult runTest(JavaSamplerContext javaSamplerContext) {
SampleResult result = new SampleResult();
//获取页面上interfaceName的方法
interfaceName = javaSamplerContext.getParameter("interfaceName");
//获取页面上methodName的方法
methodName = javaSamplerContext.getParameter("methodName");
//测试开始的时间戳
result.sampleStart();
//设置响应数据的格式
result.setResponseData(interfaceName+":"+methodName,"UTF-8");
//测试结束的时间戳
result.sampleEnd();
//设置成功的
result.setSuccessful(true);
//设置响应code码
result.setResponseCodeOK();
//设置数据编码格式
result.setDataEncoding("UTF-8");
return result;
}
@Override
public void teardownTest(JavaSamplerContext javaSamplerContext) {
System.out.print("测试结束");
}
@Override
public Arguments getDefaultParameters() {
//添加参数
Arguments arguments = new Arguments();
arguments.addArgument("interfaceName","");
arguments.addArgument("methodName","");
return arguments;
}
public static void main(String[] args){
JmeterTest jmeterTest = new JmeterTest();
JavaSamplerContext arg0 = new JavaSamplerContext(jmeterTest.getDefaultParameters());
jmeterTest.runTest(arg0);
jmeterTest.teardownTest(arg0);
}
}
然后用IDEA中的clean 先清除包,再install打成jar包,放到jmeter中的javasample中,本次代码中的参数是interfaceName, methodName ,然后面填入值,就可以用查看结果树来查看响应结果。