JMeter学习笔记:线程组

**继续:**请求(Sampler元件模拟的用户请求)出错后继续运行;

启动下一进程:如果出错,则同一脚本中的余下请求将不再执行,直接重新开始执行;

停止线程:如果遇到请求(Sampler元件模拟的请求)失败,则停止当前线程,不再执行;

停止测试:如果某一个线程的某一个请求失败了,则停止所有线程,也就是停下整个测试。但是每个线程还是会执行完当前迭代后再停止;

线程数:运行的线程数设置,一个线程对应一个模拟用户;

Ramp-Up Period(in seconds):线程启动开始运行的时间间隔,单位是秒。也就是所有线程在多长时间内开始运行。比如设置线程数为20,此处设置10秒,那么每秒就会启动20/10=2个线程。如果设置为0秒,则开启场景后20个线程立刻启动;

循环次数:请求的重复次数。选择永远,那么请求将一直运行,除非停止或崩溃;如果不选择永远,而在输入框中输入数字,那么请求将重复指定的次数,如果输入1,那么请求将执行一次,执行0次无意义,所以不支持;(如果CSV数据格式传参,则循环次数等于CSV中测试数据总数)

Same user on each iteration

选中:每次循环用第一次的cookie,不再更新;可以理解为每次循环都是同一个用户;

不选中:每次循环都是用新的cookie值;可以理解为每次循环都是不同的用户;

Delay Thread creation until needed

勾选,线程在Ramp-Up Period的间隔时间启动并运行;

不勾选:同时启动所有的线程,但第一秒只会启动2个线程;

在实际场景中,好像是否勾选对测试结果影响不大;

调度器 :勾选调度器后,可以编辑持续时间和启动延迟时间。(不能为0或为空,为空是将会提醒)

持续时间(秒):测试计划持续多长时间。如果设置了持续时间,JMeter将使用它来计算结束时间。

启动延迟(秒):点击执行按钮后,仅初始化场景,不运行线程,等待延迟到时后才开始运行线程。如果设置了启动延迟,JMeter将使用它来计算开始时间。

那就可以利用调度器有计算开始和结束时间;

注意:在发现反复对同一接口进行请求,请求结果存在成功和失败来回变更时,可以考虑是该请求所需时间长,而线程组所设置的时间无法满足要求,故而会会先一会失败一会成功,或者是单独验证时成功的场景;(此时便可勾选调度器,填写相应数据)

相关推荐
karry_k1 小时前
MyBatis批量insert-select踩坑:useGeneratedKeys=true 可能让PostgreSQL返回大量插入结果
java·后端
karry_k1 小时前
PostgreSQL 在 MyBatis 中执行正常 SQL 失效:一次 DELETE USING 踩坑记录
java·后端
SamDeepThinking5 小时前
从源码到代码:MyBatis-Flex 与 MyBatis-Plus 的逐项对比
java·后端·程序员
她的男孩8 小时前
Spring Boot 接 Flowable 工作流:用 3 个注解搭一个请假审批流程
java·后端·架构
荣码9 小时前
LLM结构化输出:让AI返回JSON而不是废话,我踩了4个坑
java·python
plainGeekDev11 小时前
Gson → kotlinx.serialization
android·java·kotlin
小bo波19 小时前
Java Swing 图形用户界面实验 —— 从算术练习到游戏开发的完整实践
java·课程设计·gui·游戏开发·扫雷·swing
咖啡八杯21 小时前
GoF设计模式——备忘录模式
java·后端·spring·设计模式