这就是我正在做的。我正在使用一个While控制器来迭代一个CSV数据文件。我在元素“CSV Data Set Config”中将“STOP THREAD ON EOF”设置为true,因为我想读取文件中的所有数据。
然后,我使用提取的数据发出两个http请求,然后比较响应,看看是否有任何差异(这是两个使用相同主体请求但从两个不同数据库阅读的soap请求)。如果没有区别,我使用prev.setSuccessful(true);
,所以我有绿色;如果有什么不同的地方,我使用prev.setSuccessful(false);
,结果树中就会有一个红色的灯,这样,一旦我发现了不同的地方,我的迭代就会停止,但我想继续,直到我读了CSV文件中的所有数据,我仍然希望有一个红灯,这样我就可以很容易地检查我有错误的地方。我的CSV文件包含数千条记录,我想使用所有数据进行http请求。即使Assert失败,这也可以吗?
这是我的项目树。
谢谢你,谢谢你
2条答案
按热度按时间cs7cruho1#
默认情况下,JMeter不会中断任何循环,并且在出现错误的情况下应该继续。检查jmeter.log文件,它应该包含停止测试的原因。
因此,请仔细检查您的线程组配置,并确保“采样器错误后要采取的操作”设置为
Continue
还要注意,使用Beanshell是某种形式的性能反模式,因为JMeter 3.1应该使用JSR223测试元素和Groovy语言进行脚本编写,所以考虑迁移到JSR223 Assertion。
vfwfrxfs2#
我解决了将
${__javascript("false")}
置于While控制器条件下的问题