#yyds干货盘点#如何使用JMeter测试Java程序性能

炒沙作縻终不饱,缕冰文章费工巧。这篇文章主要讲述#yyds干货盘点#如何使用JMeter测试Java程序性能相关的知识,希望能为你提供帮助。
JMeter测试java程序性能有天然优势吗?首先我们应该清楚测试Java程序性能不只是JMeter这款工具可以,其他工具工具或者程序也是可以完成对Java程序性能测试的,比如Loadrunner。那么JMeter对Java程序的性能有天然优势吗?答案是不能说天热优势,只是JMeter在测试Java程序时提供了一些便利,比如提供了Java Sampler。下面对Java Request界面元素做进一步的说明。

  • Classname,这个字段时一个下拉框,是必填字段,是为了设定实现了接口JavaSamplerClient的类名
  • Sleep_Time,这是个必填字段,设置等待时间,单位是:ms
  • Sleep_Mask,这是必填字段, 设置等待时间偏移量,一般为16进制数
  • Label,设置标签字段,如果填写将覆盖Name字段
  • Response Code, 如果提供了,那么该请求将会被设置为该Response Code
  • Response Message, 如果提供了,那么该请求的response message将被设置为提供的文本
  • Status,如果设置为"OK",那么状态将为success,否则的话,状态为failed.
  • SamplerData,如果设置,那么取样器返回的SampleResult对象的实例为该SamplerData,即取样器的Request对象
  • ResultData, 如果设置,那么取样器返回的SampleResult对象的实例为该ResultData,即取样器的Response对象

【#yyds干货盘点#如何使用JMeter测试Java程序性能】

Java Request取样器测试演示首先在测试脚本中设置测试Java Request类为默认的“JavaTest”,以及设置取样器的其他参数如下截图:

然后在线程组中的场景设置保持默认,即1个虚拟用户执行1次循环测试。然后根据测试结果来对应于取样器参数如下图数字标签标示。
  1. 对应于“Lable”值
  2. 对应于“ResponseCode”值
  3. 对应于“ResponseMessage”值



  1. 对应于“SamplerData”值



  1. 对应于“ResultData”值



如何测试自己的Java程序以上都是讲解怎么测试Java程序,并且以上案例都是JMeter中自带的class。那么如何在JMeter测试自己或者项目的Java程序才是更具有实际意义的。首先分为如下几部分:
  • 在项目代码中编写测试类,然后在测试类中编写一些测试方法比如如下代码:


package com.xx.test;
import org.apache.jmeter.protocol.java.sampler.AbstractJavaSamplerClient;
import org.apache.jmeter.protocol.java.sampler.JavaSamplerContext;
import org.apache.jmeter.samplers.SampleResult;
public SampleResult runTest(JavaSamplerContext arg0){
}

public void setupTest(JavaSamplerContext ctx1) {}

public void teardownTest(JavaSamplerContext ctx1) {}

  • 在项目的Build path中添加一些必要的external libraries,如Apache_JMeter_core.jar 和 Apache_JMeter_java.jar, 这些类都在 JMeter的安装目录的xx/lib/ext下面,具体如下所示:

  • 然后导出项目的 jar 包
  • 将此jar包放到JMeter的目录 xx/lib/ext下
  • 然后打开JMeter中添加Java Rquest取样器,然后就可以找到相关的测试类了,如下图,添加的测试类为com.jason.test.TB1



总结:如上,从Java Request到执行场景细节,然后再到如何一步一步操作进行测试自己的Java代码。如果大家有什么问题,可以评论留言,谢谢。

    推荐阅读