jmeter作用域与执行顺序(七)
件的解析:
config elements(配置元件) 影响其作用范围内的所有元件;
per-processors(前置处理程序) 作用域范围内的每一个sampler元件之前执行;(类似于,吃饭前要洗手这种操作)
timers(定时器) 范围内的每一个sampler元件生效
后置处理程序(Post-processors) 作用范围内的每一个sampler元件执行之后执行;(类似于,吃完饭洗碗)
断言(Assertions)在其作用范围内的每一个sampler元件执行后的结果进行校验;
监听器(listeners)收集作用范围内每一个sampler元件的结果
sampler 不和其他的元件有相互作用,所以不存在作用域的问题
----------------------------------------------------------------------------------------------------------------------------
sampler功能如下图:
按照上面的说明:sampler 不和其他的元件有相互作用,所以不存在作用域的问题
作用域例子 -- 线程组配置:
如上图所示:
http1执行顺序:
用户参数
http1
响应断言 1
察看结果树--全局
聚合报告--全局
循环器内执行顺序:
用户参数
http2
http3
察看结果树3
察看结果树--全局
聚合报告--全局
解析:
1. 用户参数: 用户参数是一个前置处理器;已预先将数据写好,供其他http的请求使用(作用于每一个sampler之前执行)
2. http1 : http1请求是属于sampler(看上一张图片,已截取所有sampler)
3. 响应断言1:http1下的响应断言,所在的位置是与http1 同一个范围的。响应断言1只会作用于http1;而不会作用于http2,http3
4. 循环控制器:循环控制就也是相同的原理,http2与http3都在循环控制器下。循环控制所影响的范围就在http2和http3中
5. 总结:http1 http2 http3 不与任何元件有相互作用;执行时,就是一条http请求
6. 察看结果树:
1.察看结果树是对应一条http请求,显示的结果就是该条请求
2.察看结果树对应全局位置,显示所有http请求的信息
察看结果树全局图:
http3察看结果树图:
7.聚合报告:
1.聚合报告是对应一条http请求,显示的结果就是该条请求
2.聚合报告对应全局位置,显示所有http请求的信息
执行顺序:
配置元件 -> 前置处理程序 -> 定时器 -> sanpler -> 后置处理程序 -> 断言 -> 监听器
注:在同一个作用域范围内有多个同一类型的元件,则这些元件按照它们在测试计划中的从上到下的顺序依次执行
疑问解答QQ群:群1:588402570,群2 772588688
群1 限制人数后,请申请群2
关注该公众号:持续更新Jmeter相关内容