我很沮丧,因为我没有得到一个简单的IF语句触发,并开始怀疑我不明白IF语句在JMeter中的实现方式。。为什么没有声明工作?
我想要做的是查询一个API,它在处理请求时返回202响应,然后返回结果时返回200。最后,如果在得到结果后再次查询,则返回404。
我有一个执行此查询没有条件的,同时控制器和退出的404
这似乎是工作确定。
我想要做的就是确认我已经有效的JSON返回的202和200,但忽略了404
我认为我可以在回路每次查询后添加一个IF控制器运行AA BSF断言,当我有202或200,但我似乎无法得到它的工作。即使我把“真”或“1 == 1”作为断言从未被调用的条件。
"${httpCode}" == "200"
在我的断言中,我添加了一个故意的错误“eval x;”导致断言,如果我拖到失败,并把它放到套件的其他部分 -
try {
eval('var response = ' + prev.getResponseDataAsString());
eval x;
} catch(e) {
prev.setSuccessful(false);
prev.setResponseMessage("Invalid response. Expected a valid JSON.");
}
就像我说的,即使我添加真或1 == 1的断言错误永远显示断言结果。我从根本上误解了IF控制器的工作方式?当然,与我一起工作的Java程序员在这里看不到有什么问题。
不幸的是这个网站不会让我发布套件的图像...
BTW
对不起,问一个“模糊”的问题,但我已经一个多星期了,现在评估JMeter的和在“How To”类型教程中找到缺乏的在线资源。很多对特定JMeter对象和基本“入门”类型帖子的引用,但没有详细说明。此外,大多数参考文献似乎都是循环而且过时的;我不断重新找回自己在相同的页面。
apache站点似乎更适合作为对象引用。
是否有人能够推荐一个非常好的在线资源?
你为什么不尝试BeanShell的岗前处理器? –