windows下打开jmeter的运行窗口,可以看到提示不要用GUI模式进行负载测试,如果要用负载测试,用cli模式,因为GUI模式运行jmeter比较消耗性能。
命令行模式
windows下找到jemeter所在文件夹,打开cmd输入命令。
jmeter -n -t [jmx file] -l [results file] -e -o [Path to web report folder]
如
jmeter -n -t E:\a.jmx -l test.jtl -e -o test
用于运行一个JMeter测试计划并生成报告。各个参数的解释如下:
- 'jmeter': 这是Apache JMeter工具的命令行启动器。
- '-n': 这个参数表示使用非GUI模式运行。
- '-t E:\a.jmx': 这个参数指定了要运行的测试计划的路径。在这个例子中,测试计划在'E:\'目录下,名为'a.jmx'。
- '-l test1.jtl': 这个参数指定了一个结果文件,该文件包含了上次运行测试的结果。在这个例子中,结果文件名为'test.jtl'。
- '-e': 这个参数表示在运行测试后生成一个扩展结果文件。
- '-o test': 这个参数表示将结果输出到指定的目录。在这个例子中,输出目录名为'test'。
测试过程中会输出请求信息,表示在该统计节点,有多少请求,吞吐量是多少,平均,最大,最小响应时间是多少,活跃线程数是多少,有多少异常。(其实就是聚合报告第一行的total数据跟随时间的变化,)
运行结束后,会在当前文件夹生成test.jtl和文件夹test。
jtl文件存储的是测试结果,根据这个测试结果生成测试报告。
在test文件夹可以找到html格式的测试报告
测试报告
Dashboard
测试和报告信息
显示源文件,测试开始和结束时间。
请求概要
可以看到100%PASS
APDEX
应用性能指数
Toleration threshold 指的是一个应用程序在运行过程中,用户对某种性能指标(如响应时间)可接受的最低限度的阈值。如果应用程序的性能超过这个阈值,用户可能会感到不满或者不耐烦,从而影响用户体验。
frustration threshold 指的是消费者在面对商品或者服务不能满足其需求时的临界点,一旦超过这个临界点,消费者可能会选择放弃购买或者寻找其他替代品。
这里给出了T和F,一个是500ms,一个是1500ms,并给出了Apdex值。
Apdex(应用程序性能指数) 是由公司联盟开发的开放标准,用于测量计算中软件应用程序的性能。其目的是通过指定一种统一的方式来分析和报告测量的性能满足用户期望的程度,apdex为0表示没有用户满意,apdex为1表示所有用户满意。
根据这个值,可以找出哪些接口的性能低。
聚合报告
同jmeter GUI方式监听器-聚合报告表格,列出每个接口响应时间,吞吐量,发送接收到的字节数。
Error
error部分会列出失败的请求信息。
如下可以看到该接口有多少个失败的,失败内容是什么。
图表
Over Time
响应时间变化
平均响应随时间的变化趋势,只有测试是持续时间才会显示,如果是单次测试,只会显示1个点。
根据这个图可以看到接口1RT很短,接口2的RT影响了该事务的RT。
响应时间百分比变化 (成功的响应)
显示最大,最小,90%,95%,55%响应时间随时间的变化。
如图后期响应时间大幅降低,在100ms多,是因为有个接口报错了。
活跃线程数变化
线程数随时间的变化,从图可以看出,该测试为固定线程5个。
字节吞吐量变化
连接时间变化
吞吐量
Hits Per Second
每秒测试计划所产生的点击服务器的次数。
Codes Per Second
每秒收到的状态码数量
Transactions Per Second
每秒事务数