在JMeter中将长响应时间记录为失败

时间:2014-03-31 04:52:44

标签: web-services jmeter

我正在使用JMeter和HTTP请求采样器来加载测试Web API

有没有人知道是否有办法配置JMeter,因此如果请求的时间超过某个阈值(例如1000毫秒),它会将请求记录为失败

现在,如果响应是500或其他什么,只记录错误。

2 个答案:

答案 0 :(得分:4)

最简单的选择是添加Duration Assertion

但是如果它不够灵活,你可以随时更深入地使用Beanshell。如果持续时间超过某个合理的值, Nithin CV poyyil 将更新以前的响应中的代码示例,将请求标记为失败:

long expectedDuration = 1000L;
long actualDuration = prev.getTime();

if (actualDuration > expectedDuration) {
    prev.setSuccessful(false);
    prev.setResponseMessage("Request took longer than " + expectedDuration);
}

请参阅How to use BeanShell guide以获取参考和小食谱。

答案 1 :(得分:1)

我的建议是你需要添加 Beanshell Postprocessor 来请求采样器在特定的响应时间阈值内记录某些请求,

long duration = prev.getTime();

if(duration>1000){
    log.error("Time Out..... !!!!");
}

希望这可以帮助你。