jmeter - 下载某些数据后如何在 Jmeter 中停止执行用户
问题描述
我正在测试我们公司正在构建的 Internet 速度测试应用程序的性能。场景是每个用户将并行下载 6 个文件(六个不同的 http 请求)。所以我正在使用 blazemeter 并行控制器来复制它。每个 Jmeter 线程将并行处理这 6 个请求,并将移动到下一次迭代。现在我们必须在用户下载 x MB 数据后停止或终止用户。意味着在所有迭代中已下载 X Mb 数据的任何线程都将停止进一步的迭代。
解决方案
您可以添加JSR223 PostProcessor,它将检索响应大小并检查它是否超过定义的阈值。如果是 - 您可以调用setStopThread()函数
示例代码:
if (prev.getBytesAsLong() > 1000) {
log.info("Sampler downloaded " + prev.getBytesAsLong() + " bytes, stopping")
prev.setStopThread(true)
}
在上面的代码片段中prev代表父HTTPSampleResult,请查看Top 8 JMeter Java Classes You Should Be Using with Groovy文章,以了解有关可用于 JSR223 测试元素的JMeter API简写的更多信息。
推荐阅读
- android - 在 App 模块中接收库模块发送的广播
- django - 如何在 Django 模型中使用@property?
- eclipse - 是否可以将我自己的自定义控件或组合放在 Jface 的列表查看器中
- excel - 我将如何自动更新在 excel 中有链接并具有 vba 代码的 powerpoint 中的多张幻灯片?
- php - 如果价值为 0 wooCommerce 包括产品变化,有没有办法使销售价格为空
- visual-studio-mac - 如何使用快捷方式在 Visual Studio for Mac 上打开 IntelliSense
- c++ - Why is size_type in std::array size_t and in std::vector usually size_t?
- laravel - Laravel 6:试图获取非对象的属性
- ios - Read Apple crash reports without OS
- java - Linked List Testing....Return type issue