jmeter使用记录

一、非界面下,执行测试文件、生成测试结果文件、生成最终的测试报告:

1、一般情况下,使用图形界面编写、调试好脚本;

2、然后在非界面下:执行测试文件、生成测试结果文件、生成最终的测试报告;

命令如下:

jmeter  -n  -t  renbao_300.jmx  -l  result.jtl  -e  -o  ./result_eport

参数说明:

-n: 非GUI模式运行JMeter

-t: 测试文件(路径)

-l: 保存生成的测试结果文件,jtl文件格式

-e: 测试结束后,生成测试报告

-o: 指定测试报告的存放位置(目录)

注意一: -l  -o 指定的文件及文件夹,不需要事先创建。

注意二:需要生成测试报告的,必须在jmeter的配置文件(jmeter.properties)中把(jmeter.save.saveservice.output_format=xml 改为 :jmeter.save.saveservice.output_format=csv)。


二、使用已经生成的测试结果,生成测试报告:

命令如下:

jmeter  -g  result.jtl  -o  ./result_eport

参数说明:

-g: 已存在的测试结果文件


三、报告简介

1、APDEX(Application Performance Index):

应用程序性能满意度的标准,范围在0-1之间,1表示达到所有用户均满意。是由APDEX公司推出的。

2、Over Time

Response Times Over Time: 响应时间

Bytes Throughput Over Time: 字节接收/发送的数量

Latencies Over Time:延迟时间

3、Throughput

Hits Per Second: 每秒点击率

Codes Per Second: 每秒状态码数量

Transactions Per Second: 每秒事务量

Response Time Vs Request: 响应时间点请求的成功/失败数

Latency Vs Request: 延迟时间点请求的成功/失败数

4、Response Times

Response Time Percentiles: 响应时间百分比

Active Threads Over Time: 激活线程数

Time Vs Threads: 测试过程中的线程数时续图

Response Time Distribution: 响应时间分布


四、区分服务器时间和网络时间

用过 LR的知道有一个“网页细分图”的,通过这个图,可以区分哪些请求的响应时间长,请求时间是消耗在server处理,还是消耗在网络传输过程中,也即是 Server time 和 Network time。

目前没有发现jmeter有提供这样的功能,但在测试结果中有些数值可以用于参考。下面说明方法:

要设置保存测试结果为xml格式:

在配置文件: jmeter.properties 中找到  jmeter.save.saveservice.output_format=csv   改为:

 jmeter.save.saveservice.output_format=xml。

重启jmeter,并执行测试文件。

注意:需要在非界面模式下执行。

得到测试结果文件:result2_renbao_300.jtl,是xml格式的,打开:


jmeter使用记录_第1张图片

注意画红线部分。

lt :不够严格的解释为:latency time (ms)。

执行测试文件,一次请求,大概的过程如下:

Start timer

Send Request

Wait for data

Initial (first) response packet occurs - this is latency

more data

......

end of response

Stop timer - this is the response time

所以 lt 是接收到响应的第一个包的时间。

而上面的 XML 文件中,t 这一项表示的是 elapsed time。也就是一个请求从发出到收到完整的响应的时间。

那么 lt 就相当于 LR 中的 Server time,而 t-lt 就相当于 LR 中的 Netwrok time。

其实,应该明白,这只是一个很粗鲁的分析,并不准确的,因为网络时间还包含:发送数据到服务器的时间,第一个相应包传回来所用的时间等,虽然这很粗鲁,却也可以作为一个参考,大致可以知道网络对这个请求有多大影响。而且太较真这个时间也没有任何意义,因为每一次请求这个时间也是不可重现的,受到可变的环境影响太大。

各个属性含义:

t:表示从请求开始到响应结束的时间

lt:表示整个的空闲时间

ts:表示访问的时刻

s:表示返回的结果true表示成功,false表示失败

lb:表示标题

rc:表示返回的响应码

rm:表示响应信息

tn:表示线程的名字“1-138”表示第1个线程组的第138个线程。

dt:表示响应的文件类型

by:表示请求和响应的字节数

responseData:表示返回数据

cookies:表示cookie

method:表示请求方式

queryString:表示查询类型

完毕。

你可能感兴趣的:(jmeter使用记录)