jmeter java接口,jmeter并发测试java接口 | 学步园
Sample
这里我用到主要JMeter的线程和报表,扩展了他的“Java请求”这个应用类别。要扩展此应用,要用到lib/ext/ApacheJMeter_java.jar,他封装此应用。
首先,需要继承ApacheJMeter_java.jar中的抽象类AbstractJavaSamplerClient,它提供了四个抽象方法: void setupTest(JavaSamplerContext arg0),SampleResult runTest(JavaSamplerContext arg0), void teardownTest(JavaSamplerContext arg0), Arguments getDefaultParameters()。setupTest和teardownTest与JUnit中的类似,分别在测试的开始和结束时执行。
runTest为主要测试方法,所有测试程序都在这里完成,JavaSamplerContext参数封装测试中需要的所有外界数据(如配置信息等)。其 SampleResult封装了所有测试结果(如:测试是否成功?程序执行时间等),getDefaultParameters用于把测试的一些默认数据在程序运行前显示到JMeter客户端,这个可以和runTest配合使用,实现数据的呈现和配置。
下面为程序:
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;
import com.ebupt.wv.client.WVClient;
public class Login2 extends AbstractJavaSamplerClient {
private static String label = "userLogin"
private String name;
private String address;
public void setupTest(JavaSamplerContext arg0) {
System.out.println("setupTest");
}
public SampleResult runTest(JavaSamplerContext arg0) {
name = arg0.getParameter("name");
address = arg0.getParameter("address");
SampleResult sr;
sr = new SampleResult();
sr.setSampleLabel(label);
try{
sr.sampleStart(); //记录程序执行时间,以及执行结果 sr.setSuccessful(true); System.out.println("send over!");
}catch(Throwable e){
sr.setSuccessful(false); }finally{
sr.sampleEnd(); }
return sr;
}
public void teardownTest(JavaSamplerContext arg0) {
}
public Arguments getDefaultParameters() {
Arguments params = new Arguments();
params.addArgument("name", "JMeter");
params.addArgument("address", "localhost");
return params;
}
}
其次,把写好的应用打包,放到lib/ext下,JMeter运行时即可找到。同时还要把用户自己编写的应用所依赖的包放在lib下。运行JMeter。界面打开后,右键“测试计划”,添加线程组;右键“线程组”-添加-Sampler-Java请求,在类名称处选择刚才写好的类。
如图:
这里,可以同时添加多个线程组、多个java请求、同时可以添加监听器用于输出不同的的测试结果图形、报表,各个请求之间可以用逻辑控制器进行执行流程的控制。如图:
最后,点击运行-启动,保存相应的项目,即可开始运行。运行时的数据,可以通过监听器写入文件以便需要时生成报表。
jmeter java接口,jmeter并发测试java接口 | 学步园相关推荐
- Java接口多线程并发测试 (一)
本文为作者原创,禁止转载,违者必究法律责任!!! 本文为作者原创,禁止转载,违者必究法律责任!!! Java接口多线程并发测试 一,首先写一个接口post 请求代码: import org.apach ...
- 使用JMeter进行接口高并发测试
一般的网络接口测试,功能性测试postman较为好用,需要测试高并发的情况下,可以用Jmeter来进行测试,postman是串行,而Jmeter可以多线程并行测试. 官网 Apache JMeter ...
- JMeter入门 | 第一个并发测试
JMeter入门 | 第一个并发测试 背景 近期我们组新来了一些新同事,之前从来没有用过JMeter做个并发测试,于是准备了一系列小教程去指引新同事,本章主要是新人入门体验教程,快速实现第一个接口并发 ...
- java 接口初始化_Java类的初始化 | 学步园
类的初始化时机1.创建类的实例 2.访问类或接口的静态变量(static final常量除外,static final变量可以)3.调用类的静态方法 4.反射(Class.forName(packag ...
- 使用JMeter对网站进行并发测试
1.右击"测试计划"添加"线程组",并单击新添加的"线程组"设置并发执行次数 2.右击刚才创建的"线程组"添加" ...
- Jmeter详细使用教程,Jmeter压测,并发测试
Jmeter下载 官方下载路径: @官方网址 jmeter3.1有道云安装包: http://note.youdao.com/noteshare?id=c35870 a98a89676ba95397 ...
- 接口要怎么测试?接口自动化可以怎么做?
接口测试分为分为单接口测试和多接口业务串联测试, 接口测试本质是测试接口传入正确的或错误的参数,服务端的处理逻辑是否正确. 1. 其中单接口测试分为业务等价类测试.参数规则边界测试和安全测试三个维度: ...
- java treetable_在Swing中创建TreeTable | 学步园
TreeTable是Tree和Table的一个结合- 就是一个即能够展开和收起行,同时也能够显示多个列的组件.在Swing的标准包里没有一个叫做JtreeTable的组件,但是我们很容易通过把Jtre ...
- java的graphics2d_Java Graphics2D 使用详解 | 学步园
正如我们在前面提到的,我们可以对Graphics2D类进行多项设置.实际上,渲染引擎在绘制Graphics2D图形前会查看 7个主要的属性: Paint Stroke Font Transformat ...
- java gnu_GNU/Linux下Java开发环境的安装和配置 | 学步园
首先下载JDK,在http://www.oracle.com/technetwork/java/javase/downloads/index.html下载最新版本的JDK,选择平台为linux,就会得 ...
最新文章
- 四旋翼姿态解算——梯度下降法理论推导
- 乘法器的verilog实现(并行、移位相加、查找表)
- Ubuntu Server中怎样卸载keepalived
- Get JSON with the jQuery getJSON Method
- 漫步数学分析番外二(上)
- Asp.net MVC 示例项目Suteki.Shop分析之---Model和Service
- Java键盘录入 Scanner
- Windows Tips
- [原创]使用 Google Chart 在线服务实现软件版本发布时间线图
- Trie(字典)树详解
- 深度学习TF—9.循环神经网络RNN及其变体GRU、LSTM
- 使用css让文字两端对齐
- 通过PS制作逼真的车窗玻璃雨滴效果
- 短除法对一个数分解质因数
- JAVA版AES加解密工具类(含偏移量)
- Linux内核地址空间分布
- 数学建模竞赛基础知识
- Python解释器的下载与安装教程(Win11)
- HTML中边框的设置
- 新观影神器(安卓、iOS端)
热门文章
- SOLIDWORKS——参数化建模
- linux 扩充db2表空间,如何扩充db2的表空间、加容器等表空间维护操作
- 计算机意外重启或遇错误无法继续,计算机意外地重新启动或遇到错误如何解决?...
- ibm服务器和微软,微软与IBM不得不说的事情
- WPF 窗体边框处理
- 不能读取文件“itunes.library.itl”因为它是由更高级别的itunes所创建的
- license文件生成原理
- uva10891Game of sum
- ExtJs4 笔记 Ext.tab.Panel 选项卡
- (转)android技巧01:Preferencescreen中利用intent跳转activity