【学习笔记】系列十三:使用JMeter进行性能测试之Java请求
2016-04-20 09:38
871 查看
"Java请求"测试是指通过JMeter工具对Java Class进行压力测试。JMeter可设定测试时的并发线程数、循环次数或测试时长等,模拟出巨大的负载后便可观察在不同压力下程序的强度和分析出整体性能。
一.启动JMeter
下载:
http://jmeter.apache.org/download_jmeter.cgi
启动:
Linux环境下运行 $安装目录/bin/jmeter.sh
Windows下运行 $安装目录/bin/jmeter.bat
二.编写用例
针对"Java请求"类型的测试,需要基于JMeter测试框架编写用例。
1、新建一个普通的Java工程;
2、将 $JMeter安装目录/lib/ 目录引入工程;
3、新建Java Class,如下的"PerformanceTest ",并继承"AbstractJavaSamplerClient";
代码示例:
4、导出成Jar并置于 $JMeter安装目录/lib/ext/ 下,若有依赖Jar也置于 $JMeter安装目录/lib/ 下;
5、启动或重启JMeter。
三、运行用例
1、主界面左侧“测试计划”,右键菜单->添加->Threads(Users)->线程组;
2、再选中刚才新增的"线程组",右键菜单->添加->Sampler->Java请求;
3、再选中刚才新增的"Java请求",右键菜单->添加->监视器->聚合报告;
4、选择想测试的类名,并在"线程组"选项中输入循环次数及并发线程数;
5、点击菜单栏上"运行"->启动后便开始运行,在"聚合报告"查看结果数据。
Tips:
若在"Java请求"选项中未找到测试用例类名: 则请先确认用例是否继承了JMeter框架的基类; 其次保证用例Jar文件在 $安装目录/lib/ext/ 下; 尝试重启JMeter。
一.启动JMeter
下载:
http://jmeter.apache.org/download_jmeter.cgi
启动:
Linux环境下运行 $安装目录/bin/jmeter.sh
Windows下运行 $安装目录/bin/jmeter.bat
二.编写用例
针对"Java请求"类型的测试,需要基于JMeter测试框架编写用例。
1、新建一个普通的Java工程;
2、将 $JMeter安装目录/lib/ 目录引入工程;
3、新建Java Class,如下的"PerformanceTest ",并继承"AbstractJavaSamplerClient";
代码示例:
/** * */ package test; 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 xuanyin * */ public class PerformanceTest extends AbstractJavaSamplerClient { /** * */ private static long start = 0; private static long end = 0; /** * 执行runTest()方法前会调用此方法,可放一些初始化代码 */ public void setupTest(JavaSamplerContext arg0) { // 开始时间 start = System.currentTimeMillis(); } /** * 执行runTest()方法后会调用此方法. */ public void teardownTest(JavaSamplerContext arg0) { // 结束时间 end = System.currentTimeMillis(); // 总体耗时 System.err.println("cost time:" + (end - start) / 1000); } /** * JMeter界面中可手工输入参数,代码里面通过此方法获取 */ public Arguments getDefaultParameters() { Arguments args = new Arguments(); return args; } /** * JMeter测试用例入口 */ @Override public SampleResult runTest(JavaSamplerContext arg0) { SampleResult sr = new SampleResult(); try { // Start sr.sampleStart(); /** * Start~End内的代码会被JMeter * 纳入计算吞吐量的范围内,为了使 * 性能结果合理,无关代码不必放此 */ // TODO /** * True/False可按测试逻辑传值 * JMeter会对失败次数做出统计 */ sr.setSuccessful(true); // End sr.sampleEnd(); } catch (Exception e) { e.printStackTrace(); } return sr; } }
4、导出成Jar并置于 $JMeter安装目录/lib/ext/ 下,若有依赖Jar也置于 $JMeter安装目录/lib/ 下;
5、启动或重启JMeter。
三、运行用例
1、主界面左侧“测试计划”,右键菜单->添加->Threads(Users)->线程组;
2、再选中刚才新增的"线程组",右键菜单->添加->Sampler->Java请求;
3、再选中刚才新增的"Java请求",右键菜单->添加->监视器->聚合报告;
4、选择想测试的类名,并在"线程组"选项中输入循环次数及并发线程数;
5、点击菜单栏上"运行"->启动后便开始运行,在"聚合报告"查看结果数据。
Tips:
若在"Java请求"选项中未找到测试用例类名: 则请先确认用例是否继承了JMeter框架的基类; 其次保证用例Jar文件在 $安装目录/lib/ext/ 下; 尝试重启JMeter。
相关文章推荐
- Eclipse 配置SSH 详解
- java 泛型详解(普通泛型、 通配符、 泛型接口)
- Java同步和死锁的实例分析
- 关于Java调用32/64位dll的问题
- eclipse项目红色叹号解决方法 eclipse导入jar包
- 基于SpringMVC的文件上传
- spring autowired mockito单元测试
- java nio channel
- java的反编译器
- spring mvc显示图片(个人记录)
- SE Springer小组之《Spring音乐播放器》需求分析说明书二
- J2SE(十)Java之修饰符
- java 注解
- 手动编译java的package问题,及演示继承的基本实现
- Spring事务管理高级应用难点剖析
- 使用 Java 配置进行 Spring bean 管理
- JAVA字符串操作
- java中的内存分配和使用(参考学习)
- java数据类型转换
- spring事务心得积累