下载某些数据后如何停止在Jmeter中执行用户

时间:2019-08-12 14:04:48

标签: jmeter

我正在测试我们公司正在构建的Internet速度测试应用程序的性能。 场景是每个用户将并行下载6个文件(六个不同的http请求)。所以我正在使用blazemeter并行控制器来复制它。 每个Jmeter线程将并行命中这6个请求,并将移至下一个迭代。 现在,我们必须停止或杀死下载x MB数据的用户。 意味着所有在所有迭代中下载X Mb数据的线程都将停止进一步的迭代。

1 个答案:

答案 0 :(得分:0)

您可以添加JSR223 PostProcessor,该值将为retrieving the response size,并检查其是否超过定义的阈值。如果是,则可以调用setStopThread()函数

示例代码:

if (prev.getBytesAsLong() > 1000) {
    log.info("Sampler downloaded " + prev.getBytesAsLong() + " bytes, stopping")
    prev.setStopThread(true)
}

在上面的片段中,上一个代表父级HTTPSampleResult,请查看Top 8 JMeter Java Classes You Should Be Using with Groovy文章,以了解有关JMeter API可用于JSR223测试元素的速记的更多信息。