我有一个事务控制器,它在我的Jmeter测试计划中有一个http请求。交易名称和网址来自CSV文件。最后,执行总计分为5个不同的交易。如何在指定的线程数量失败后停止Jmeter测试
TestPlan中:
TestPlan中 -Thread组 - 用户定义的变量
总样品执行将是8000-10000。现在我想要的,如果总样本失败达到100,我的JMeter测试应该停止测试执行。
我已经添加了用户定义的变量名“thread”并且值为“0”。我在Beanshell中添加了以下代码后处理器
int count= Integer.parseInt(vars.get("thread"));
if (prev.getErrorCount()==1){
count++;
System.out.println(count);
vars.put("thread",Integer.toString(count));
}
if (count==100){
System.out.println("Reached to max number of errors in load test, stopping test");
log.info ("Reached to max number of errors in load test, stopping test");
prev.setStopTestNow(true);
}
某种程度上代码不能按预期工作。当错误计数达到100时,Jmeter测试不会停止。当错误计数达到130时停止测试。我不确定谁来修复上面的代码。
有人能让我知道上面的代码中有什么问题吗?
您是否有嵌套样本? – Ross
如果我为单个用户运行它,并保持错误计数限制为3,它工作正常。 3名失败者后停止测试。但是,当我运行5个用户,最大错误数为3,8次失败后停止测试。 它是简单的脚本。没有嵌套样本。 – user1169236
您是否尝试过使用道具而不是'vars'? – Ross