我可以在JMeter脚本中禁用所选采样器的全局响应断言吗?

时间:2016-12-02 14:09:07

标签: jmeter

我遇到过这样一种情况:我在全局响应断言中声明了相同的文本但是为少数HTTP采样器返回了文本(偶尔并不总是我必须忽略它)。现在我希望我的jmeter脚本以这样的方式编写,即全局断言应该在那里,但是对于少数采样器可以禁用它。有人可以帮忙吗?

1 个答案:

答案 0 :(得分:0)

我可以通过以下方法来解决这个问题:

  1. 在采样器中插入一个正则表达式提取器,在那里有可能获得意外响应(这在全局断言中存在,并且因为采样器失败)。

  2. 使用带有以下代码的BeanShell PostProcessor来覆盖响应。因此不应将全局断言应用于实际响应。

    import org.apache.jmeter.assertions.AssertionResult;
    
    //Exception_RE is the Refernce Name for the regular exception extractor for Exception.
    if(${__javaScript(vars.get('Exception_RE_matchNr')>=1,)}) {
    
    String DefaultResponse = "My Test Response on Exception"; 
    
    //To over-write the sampler response with the our own response message when we encounter the Exception which is there in the global assertion.
    prev.setResponseData(DefaultResponse);
    
    
    prev.setResponseOK();
    
    }