JMeter如何不失败500个内部服务器错误

我在参数化调用中将JMeter用作单元测试工具,我希望其中一些响应是500个内部服务器错误。我正在使用BeanShell断言来检查响应。

如果响应包含指定的文本,我希望将500个内部服务器错误中的一些不标记为失败。所有500个服务器错误都标记为失败。是否可以更改行为?

以下是BeanShell断言的摘录。

if (ResponseCode.equals("500")) {

Failure = false;

String respData = new String(ResponseData);

if (! respData.contains("specific Text")) {

Failure = true;

FailureMessage = "500 Internal Server Error: Unexpected Response. " +

"Response Message: " + respData;

}

}

谢谢和问候

回答:

UPD:请在下面找到最简单的“本机”解决方案:

  • https://stackoverflow.com/a/9931570/460802


如果您想在代码中做一些棘手的事情,请使用以下方法。

如果您的JSR223断言中的代码为500,则访问并修改SampleResult以将状态从“失败”更改为“合格”,或者使用JSR223

PostProcessor代替-

它们都可以访问SampleResult对象。

if (ResponseCode.equals("500") == true) { 

SampleResult.setResponseOK();

/* the same is

SampleResult.setSuccessful(true);

SampleResult.setResponseCodeOK();

SampleResult.setResponseMessageOK();

*/

}

改为

使用prev-访问连接了一个后处理器的采样器的SampleResult对象:

if (prev.getResponseCode().equals("500") == true) { 

prev.setResponseOK();

/* the same is

prev.setSuccessful(true);

prev.setResponseCodeOK();

prev.setResponseMessageOK();

*/

}

以上是 JMeter如何不失败500个内部服务器错误 的全部内容, 来源链接: utcz.com/qa/416307.html

回到顶部