jmeter性能测试及生成性能测试报告

JMeter执⾏原理

JMerer通过线程组来驱动多个(也可以理解为LR⼯具⾥⾯的虚拟⽤户)运⾏测试脚本对⽬标服务器发起⼤量的⽹络请求,在每个客户端上可以运⾏多个线程组,也就是说⼀个测试计划⾥⾯可以包含N个线程组。

线程属性

1.线程数

⼀个线程可以理解为对应模拟⼀个⽤户,所以线程数越多,那么也就认为可以模拟的⽤户数越多。

2.Ramp-Up时间(秒)

该属性指的是所有线程从启动到开始运⾏的时间间隔,单位是秒,也就是说所有线程在多⻓时间内开始执⾏,如线程数设置50,设置的时间为5秒,那么计算的公式为:

每秒执⾏线程数=线程数/Ramp-Up

具体如:

如设置的线程数为50,Ramp-up的时间为10,那么也就是说开启执⾏后,每秒会启动5个线程,如果Ramp-Up设置为
0,那么开始执⾏后,50个线程会⽴刻启动。

每秒一百个用户:

3.循环次数

每个线程发送请求的次数。如果线程数为10,循环次数为100,那么每个线程发送100次请求。总请求数为10*100=1000 。如果勾选了“永远”,那么所有线程会一直发送请求,一到选择停止运行脚本。

4.调度器:设置线程组启动的开始时间和结束时间(配置调度器时,需要勾选循环次数为永远)

  • 持续时间(秒):测试持续时间,会覆盖结束时间
  • 启动延迟(秒):测试延迟启动时间,会覆盖启动时间。从当前时间延迟多长时间开始运行测试,也就是说惦记执行后,仅仅是初始化的场景,不会执行测试,等待延迟,到达后开始运行测试,执行的时间为持续时间设置的时间 

Jmeter聚合报告参数

Label----每个请求的名称,比如HTTP请求等

#Samples----发给服务器的请求数量

Average----单个请求的平均响应时间

Median----50%请求的响应时间

90%Line----90%请求响应时间

95%Line----95%请求响应时间

99%Line----99%请求的响应时间

Min----最小的响应时间

Max----最大的响应时间

Error%----错误率=错误的请求的数量/请求的总数

Throughput----吞吐量即表示每秒完成的请求数

Received KB/sec----每秒从服务器端接收到的数据量

Sent KB/sec----每秒从客户端发送的请求的数量

性能测试报告

配置修改:

环境变量配置:

把jmeter添加到path的环境变量

JMETER_HOME后面跟的是jmeter的路径

mac配置jmeter环境变量

#JMETER环境变量配置
export JMETER_HOME=/Applications/tools/apache-jmeter-5.4.1
export PATH=$JMETER_HOME/bin:$PATH

jmeter生成测试报告的命令:(进入到tests目录下再执行命令)

1

2

3

jmeter --t script/1212.jmx -l api.jtl --o performanceReport/

#-n -t 后面跟的是要执行的脚本 -l 后面跟的是一个后缀为jtl的文件 -e -o后面的跟的是生成的测试报告的文件名

打开测试报告的路径:


最后: 为了回馈铁杆粉丝们,我给大家整理了完整的软件测试视频学习教程,朋友们如果需要可以自行免费领取 【保证100%免费】

软件测试面试文档

我们学习必然是为了找到高薪的工作,下面这些面试题是来自阿里、腾讯、字节等一线互联网大厂最新的面试资料,并且有字节大佬给出了权威的解答,刷完这一套面试资料相信大家都能找到满意的工作。