6 - Jmeter系列-1-多线程组执行顺序
Jmeter同一个测试计划下的多个线程组之间的执行顺序
1、勾选1-实现:一个线程组执行完毕后,接着执行下一个线程组
1)勾选中,同一类型的线程,根据显示顺序依次执行
2)不勾选,同一类型的线程,并发执行
2、勾选2-实现:关闭主线程后运行teardown程序来正常关闭线程组(运行的线程本次迭代完成后关闭)
比如主线程因为错误导致测试停止时,不设置此项则程序直接停止,设置此项则程序继续运行teardown线程组后停止
3、勾选3-实现:函数测试模式。在调试脚本的过程中,我们可能需要获取服务器返回的详细信息就可以选择此项,此项记录较多的数据会影响测试效率,所以在执行性能测试时请关闭此项
总场景:
2个前置线程组,3个普通线程组,2个后置线程组;
每个线程组里都包含一个空的http请求,请求里面包含一个5秒的定时器;
当某个线程组执行时,先执行定时器等待5秒,然后再发送http请求:
线程组默认执行顺序:setUp线程组类->普通线程组类->tearDown线程组类
场景一:只选择“主线程结束后运行teardown线程组”
1)前置setup线程组 : 最先执行,多个,并发执行(2个前置线程组执行时间一致)
2)普通线程组:3个,并发执行(3个普通线程组执行时间一致,比setup线程组晚5秒)
3)后置teardown线程组:2个,并发执行(2个后置线程组执行时间一致,比普通线程组晚5秒)
场景二:选择“独立运行每个线程组”和“主线程结束后运行teardown线程组”
备注:大的方向上,不同线程组类型之间按照“setUp前置->普通->tearDown后置”执行;小的方向上,同类型线程组之内的各个线程之间按照顺序串行执行;7个线程组之间,各自间隔5秒执行