我们可以在负载测试期间增加JMeter中的线程数吗? 我正在使用Jmeter3.2版本,如何在负载测试期间配置或增加线程数
答案 0 :(得分:2)
你不能增加线程数(如Vins所说),但你可以启动你需要的最大线程,并让大多数线程处于空闲状态,直到测试告诉他们做某事。
例如:假设您要从5个主题开始,并在myVar
变为true
时将其增加到10:
Thread Group
Number of threads: 10
While Controller
Condition: ${__javaScript(${__threadNum} > 5 && '${myVar}' != 'true')}
Constant Timer <-- thread will idle here for a bit and check condition again
Samplers <-- when not idling, script starts here
因此,5以下的线程将在While Controller下空闲,定期检查条件(周期由Constant Timer决定)。当条件不再满足时,它们将退出而继续执行脚本。
当然这只是一个方法,您可以根据需要定制它(例如,条件可以是简单的或复杂的,您可以通过多次修改变量来动态启用和禁用线程,等等。)
答案 1 :(得分:1)
您可以使用变量/属性参数化线程数。但是,一旦测试开始,比如使用5个线程,则在测试运行时无法将其更改为10个线程。
答案 2 :(得分:0)
您可以使用插件Ultimate thread group。在运行测试之前,您必须进行设置。不幸的是,您将无法在测试期间手动添加线程。
答案 3 :(得分:0)
您无法操纵线程数(虚拟用户),但您可以实时控制每分钟请求数(即吞吐量),这应该是一个可行的替代方案。
使用${__P(throughput,)}
之类的__P() function将所需的初始吞吐量定义为JMeter属性:
throughput
属性来控制请求的执行频率,例如使用__setProperty() function。此外,您甚至可以通过例如Beanshell Server