如何根据随机重量运行测试/控制器?例如,有两个测试,一个重量为25%,另一个重量为50%。 50岁的人应该经常跑两次。
也许吞吐量控制器以某种方式与随机混合?
答案 0 :(得分:5)
我认为您可以使用以下配置的吞吐量控制器:
吞吐量值是从配置属性预设的,或者是在可接受的值范围内生成的(在这种情况下为0..100)。
答案 1 :(得分:1)
对于一些简单的权重,您可以使用开关控制器默认为第一个孩子的事实。例如50%25%25%喜欢这样
Switch Controller - ${__Random(0,3)}
- Child 0 (and 3)
- Child 1
- Child 2
通过将随机和简单控制器中的任务分组为子项,您可以更进一步。
答案 2 :(得分:0)
在这种情况下,最好使用2个线程组。 首先设置以产生比第二个更多的请求。
PS。您可以使用吞吐量整形计时器来控制每组中的速率。
答案 3 :(得分:0)
我通过创建一个具有以下开关值的开关控制器来实现这一目的:
${__javaScript( var s="001"; new Number(s.charAt( Math.floor(Math.random()*s.length) )) )}
javascript从字符串s
中选择一个随机字符并将其转换为数字。因此,在上面的示例中,0的选择频率是1的两倍,并且可以通过在字符串中添加/删除字符来更改权重。
我使用的是String而不是数组,因为我的JMeter版本使用的javascript版本似乎不支持数组文字,所以这样做了一些不那么冗长。