JMeter三大重要组件——线程组、取样器、查看结果数(3)
  TEZNKK3IfmPf 2天前 8 0

一、JMeter三大重要组件——线程组

1、作用:JMeter主要通过线程组来运行用户脚本

线程数:代表虚拟用户数

JMeter三大重要组件——线程组、取样器、查看结果数(3)

2、在取样器错误后要执行的动作:

继续: 当取样器出现错误后,继续执行
eg:取样器2的错误,并没有影响到取样器3的运行

JMeter三大重要组件——线程组、取样器、查看结果数(3)

启动下一进程循环: 当线程组中,有循环次数时,循环体中的取样器如果有任何一个报错,那么终止当前循环,进入下一个循环,相当于continue

JMeter三大重要组件——线程组、取样器、查看结果数(3)
JMeter三大重要组件——线程组、取样器、查看结果数(3)

停止线程: 当取样器出现错误后,运行取样器的当前线程停止,其他线程不受影响。

JMeter三大重要组件——线程组、取样器、查看结果数(3)
JMeter三大重要组件——线程组、取样器、查看结果数(3)

停止测试: 当取样器出现错误后,停止全部线程
JMeter三大重要组件——线程组、取样器、查看结果数(3)

立即停止测试: 当取样器出现错误后,立刻停止全部线程,而不等待线程是否运行结束

JMeter三大重要组件——线程组、取样器、查看结果数(3)

3、线程属性

线程数: 执行当前线程组下的业务脚本时,需要启动的线程数。如果设置N个,那么会有N个线程同时运行线程组下的业务脚本。

Ramp-UP时间(秒) : 指启动全部线程所需要耗费的时间,一般结合线程数使用。

例如:如果设置线程数为3,Ramp-UP时间为30,那么理论上启动3个线程需要消耗30秒。其中:第0秒启动第1个,第10秒启动第2个,第20秒启动第3个,间隔时间为30S/3个=10S/个, 这也说明了为什么20秒的时间执行了全部的线程

间隔时间计算公式:Ramp-UP时间(秒) / 线程数

JMeter三大重要组件——线程组、取样器、查看结果数(3)

JMeter三大重要组件——线程组、取样器、查看结果数(3)

延迟创建线程直到需要: 默认情况下,测试开始的时候,所有线程就全部创建了。
如果勾选了此选项,那么线程在需要用到的时候才创建。

JMeter三大重要组件——线程组、取样器、查看结果数(3)

3、调度器

持续时间:允许JMeter运行的时间
启动延迟:延迟XX秒开始运行JMeter

JMeter三大重要组件——线程组、取样器、查看结果数(3)
本来第0秒启动第1个线程
有延迟时间:所以延迟5秒启动第1个线程
本来:第15秒启动第2个线程
有延迟时间:所以延迟5秒启动第2个线程,第20秒启动第2个线程

有持续时间:10秒,超过了持续时间的最大值
Ramp-UP时间,设置的是30秒
持续时间到了10秒之后就不会再启动任何线程了所以第20秒没有启动任何线程

JMeter三大重要组件——线程组、取样器、查看结果数(3)
JMeter运行总时间 = 持续时间+ 启动延迟
注意:当JMeter运行的时间达到设置的持续时间上限后,停止测试时,只会发送停止的信号;而是否停止还会受到线程的控制。如果线程处理阻塞状态,那么就算达到持续时间上限也不会停止

4、setUp线程组和tearDown线程组

JMeter三大重要组件——线程组、取样器、查看结果数(3)

作用:执行setUp线程组->线程组->tearDown线程组

二、JMeter三大重要组件——取样器

1、基本

JMeter三大重要组件——线程组、取样器、查看结果数(3)

a、自动重定向和跟随重定向

JMeter三大重要组件——线程组、取样器、查看结果数(3)

客户端JMeter访问的是http协议的京东页面
京东服务器就返回了一个302错误给JMete客户端
要JMeter客户端根据响应头当中的Localion主动的跳转
到https的京东页面

如果没有自动重定向和跟随重定向
那么jmeter就不会根据302的响应头中的Location去自动重新发送请求
JMeter三大重要组件——线程组、取样器、查看结果数(3)
如果勾选了跟随重定向那么jmeter会把跟随的过程在查看结果树中的子集进行展示

JMeter三大重要组件——线程组、取样器、查看结果数(3)
JMeter三大重要组件——线程组、取样器、查看结果数(3)

如果勾选了自定重定向那么jmeter只会展示最终的结果
JMeter三大重要组件——线程组、取样器、查看结果数(3)

2、高级

JMeter三大重要组件——线程组、取样器、查看结果数(3)

a、连接时间

JMeter客户端向京东服务器发送请求时
第一步要先建立TCP连接,建立连接时,也需要消耗时间
如果消耗的时间超过了Jmeter设置的最大连接时间
那么JMeter主动抛出错误,不再等待建立连接的过程

b、响应时间

服务器处理时间+jmeter客户端收到响应的时间的和(a3+a4+L)与设置的响应时间对比
如果大于超时时间,jmeter主动断开连接

JMeter三大重要组件——线程组、取样器、查看结果数(3)

c、代理服务器

JMeter三大重要组件——线程组、取样器、查看结果数(3)

三、JMeter三大重要组件——查看结果数

JMeter三大重要组件——线程组、取样器、查看结果数(3)

1、所有数据写入一个文件

JMeter三大重要组件——线程组、取样器、查看结果数(3)
会有错误提示框,点击确定即可
JMeter三大重要组件——线程组、取样器、查看结果数(3)
继续执行启动按钮,即可在指定的目录下生成文件

记事本打开test.jtl文件,可以得到取样器信息
JMeter三大重要组件——线程组、取样器、查看结果数(3)

2、取样器结果分析

JMeter三大重要组件——线程组、取样器、查看结果数(3)
Load time: 该次请求所消耗的总时间
Connect Time: 建立连接所消耗的时间
Latency:网络传输时间+服务器内部处理时间
Size in bytes: 整个接口请求+响应数据包大小
Sent Bytes:接口请求数据包大小
Headers size in bytes: 响应头大小
Body size in bytes: 响应体大小
Sample Count:1 取样器数量,指发送了多少个请求
Error Count:错误数量
Data type (“text”|“bin”|“”) : 响应数据的格式
Response code: 响应状态码
Response message: 状态消息
ContentType: text/html;charset=utf-8 响应体格式
DataEncoding: utf-8 数据包编码格式

3、请求

JMeter三大重要组件——线程组、取样器、查看结果数(3)
Request Body:请求体的内容
包括请求方法、URL、请求体、Cookie的内容
Request Headers:请求头

4、响应数据

JMeter三大重要组件——线程组、取样器、查看结果数(3)
扩展:Content-Type有哪些常见类型
text/html: html格式
application/json: json格式
application/x-www-form-urlencoded: 表单格式
application/form-data: 扩展表单格式,一般用它传递文件

【版权声明】本文内容来自摩杜云社区用户原创、第三方投稿、转载,内容版权归原作者所有。本网站的目的在于传递更多信息,不拥有版权,亦不承担相应法律责任。如果您发现本社区中有涉嫌抄袭的内容,欢迎发送邮件进行举报,并提供相关证据,一经查实,本社区将立刻删除涉嫌侵权内容,举报邮箱: cloudbbs@moduyun.com

  1. 分享:
最后一次编辑于 2天前 0

暂无评论

TEZNKK3IfmPf