JMeter包含控制器



第一个脚本

Thread-1
 |--Http Sampler
 |--Include Controller <second script>

第二个脚本

TestPlan
|--Thread-2
|    |--Http Sampler
|--Thread-3
     |--Http Sampler

我运行了第一个脚本,它只执行了几个步骤,并使用include控制器来调用下一个脚本。我需要第二个脚本线程组(线程2和线程3)同时运行,而不是连续运行。我理解线程默认情况下并发运行。但当我执行代码时,我看到:

  • 线程1成功
  • 威胁2成功
  • 执行永远不会进入线程-3

你能帮帮我吗?我想知道如何同时运行第二个脚本的线程组?

您滥用了IncludeController,需要在包含的测试计划(第二个脚本)中使用Test Fragment元素

  • 第一个和第二个脚本是单独的测试计划
  • 第一个测试计划包含一个线程,其中包含一个用于调用第二个脚本或第二个测试计划的include控制器
  • 第二个测试计划包含2个线程组

解决方案:

  • 在两个测试计划中,取消勾选"连续运行线程"
  • 在第二个测试计划中,勾选"延迟线程创建",这意味着内存需求与并发活动线程的数量成比例,而不是与线程总数成比例
  • 默认情况下,JMeter中的线程同时运行

理解并发和并发之间的区别。这里有一个有用的链接:如何在Jmeter 中生成并发用户负载

最新更新