【问题标题】:Difference between Start Next Thread Loop and Stop Thread in JMeterJMeter中启动下一个线程循环和停止线程的区别
【发布时间】:2022-01-18 14:50:25
【问题描述】:

有一个包含一组相关请求的测试计划。如果第一个请求失败,那么我需要跳过后续请求,因为它们无论如何都会失败。我怎样才能在 JMeter 中实现这一点。 测试计划 线程组(线程数:2) 请求1 请求2 请求3 请求4

例如:如果 Request1 由于某些错误而失败,则线程不应执行 Request2、Request3、Request4。因为 Request2,3 & 4 使用 request1 中的令牌,如果请求失败,它无论如何都会失败。是否可以使用 Start Next Thread Loop 和 Stop Thread 来实现。这两个选项有什么不同

【问题讨论】:

    标签: jmeter


    【解决方案1】:

    您在 Thread Group 中定义的每个 JMeter 线程(虚拟用户)都会颠倒执行 Samplers

    当没有更多的采样器可以执行或循环进行迭代时 - 线程正在关闭。当没有更多正在运行的线程时 - 测试将失败。

    • 开始下一个线程循环 - 忽略错误,开始下一个循环并继续测试,所以如果 Request1 失败 - JMeter 将简单地转到线程组的下一个迭代并尝试执行 @ 987654329@ 再一次,直到成功。失败会记录在.jtl results file
    • 停止线程 - 当前线程退出,表示当前线程将被关闭,不会执行任何操作。失败将记录在 .jtl 结果文件中

    另一个选项是使用If Controller${JMeterThread.last_sample_ok} pre-defined variable 作为条件,如果您设计这样的测试计划:

    Request2 只有在Request1 成功时才会执行

    【讨论】:

    • 感谢您的帮助。
    猜你喜欢
    • 1970-01-01
    • 2018-01-04
    • 1970-01-01
    • 2020-08-16
    • 1970-01-01
    • 1970-01-01
    • 2023-03-30
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多