如何让http请求发送出同样的秒数?

时间:2016-04-19 01:15:14

标签: jmeter

很长一段时间困扰,如何发送三个请求沿同一秒发送,而不是一个接一个,我知道这个问题可以通过提供多个线程组来解决,但我想知道是否还有其他更好的方法吗?

enter image description here

2 个答案:

答案 0 :(得分:1)

enter image description here您可以将HTTP请求样本放入循环控制器中,并将循环设置为所需的次数。这样,您可以发送多个相同数据的请求,而您的会话仍然保持不变。

答案 1 :(得分:1)

您无法使用一个线程运行3个请求。

如果你运行3个线程 - 在这种情况下,每个线程都会颠倒执行请求。

如果你需要在同一个线程组的范围内完成它,可以这样做:

  • 3个主题
  • 1 HTTP请求采样器
  • Beanshell PreProcessor根据以下话题动态更改网址和参数:

    switch (ctx.getThreadNum()) {
        case 0:
            sampler.setDomain("example.com");
            sampler.setName("HTTP Request 1");
            break;
        case 1:
            sampler.setDomain("jmeter.apache.org");
            sampler.setName("HTTP Request 2");
            break;
        case 2:
            sampler.setDomain("jmeter-plugins.org");
            sampler.setName("HTTP Request 3");
            break;
    }
    

Synchronizing Timer + beanshell

有关使用Java和JMeter API在设计负载测试时克服JMeter限制的全面信息,请参阅How to Use BeanShell: JMeter's Favorite Built-in Component