2017-04-27 76 views
2

我使用jMeter创建了一个测试计划,并且我想创建一个包含100个并发用户的测试计划。如何在运行jMeter时减少线程数?

在第一页(主页)后,我想减少50个用户(下载并且不访问下一页),而另外50个用户继续访问另一个页面。

有人建议我使用Ultimate Thread Group,但我认为它无能为力。

这个问题的任何想法?

回答

0

可以添加吞吐量控制器在您的主页之后,并且只有50个用户将您想要执行的所有请求添加到吞吐量控制器中。你有两个选择:

  • %的处决:0-100一个数字,指示的时间控制器将执行的百分比。 “50”表示控制器将在测试计划的一半迭代期间执行。

  • 执行总次数:对于总执行模式,数字表示控制器执行的总次数。

检查Throughput Controller从的JMeter用户手册,了解更多信息。

+0

这是好方法,谢谢 – Jusfunny

3

如果您需要关闭1请求后线程的一半,你可以如下做到这一点:

  1. 的第一个请求
  2. 将在“条件”区域下面的表达式后添加If Controller

    ${__threadNum} % 2 == 0 
    
  3. 添加Test Action样的。如果控制器的一个孩子,其配置如下:

    • 目标:Current Thread
    • 操作:Stop

说明:

  • __threadNum() function返回当前线程数
  • 如果当前线程数为甚至(2, 4,6,8等)因此它正在关闭
  • 因此,第一个采样器将由100个线程执行,第二个(和以下采样器)将由50个线程执行,因为只剩50个将保留
  • 测试操作采样器doesn't generate any results所以它是罚款useit,它不会出现在测试指标

Test Plan结构:

JMeter shut down half of threads

+0

感谢您的回复,我理解您的想法,但是如果我只需要30%的继续和70%的退款,我该怎么办 – Jusfunny

相关问题