【问题标题】:"AND"ing multiple assertion parameters in JMeter在 JMeter 中“与”多个断言参数
【发布时间】:2014-04-04 19:52:00
【问题描述】:

我想在一个响应断言模式中断言多个变量。有一种方法可以验证多个值的 OR,但我还没有找到 AND 的方法。

例如,要断言值 v1、v2 或 v3 - 您可以在 Response Assertion > Patterns to Test >Add : v1|v2|v31。如果在响应中找到其中任何一个,则测试将通过。这也适用于 || 运算符。

我需要在 AND 条件下给我同样灵活性的东西。我目前必须为我要断言的每个值添加一个模式,这样做非常痛苦,尤其是在断言列表很长的情况下。

有人知道使用某种 AND 运算符组合断言模式的方法吗?我试过很明显的,&&&.+等。但到目前为止还没有运气。

【问题讨论】:

    标签: unit-testing jmeter assertion


    【解决方案1】:

    当您将多行添加到响应断言时,默认操作是与行。

    每个 V1、V2、V3 的单独一行等于 V1&V2&V3。

    这意味着您也可以混音。 V1 的线和 V2|V3 的线等于 V1&(V2|V3)。

    【讨论】:

      【解决方案2】:

      我认为Beanshell Assertion 正是您所寻找的,它提供了您能想到的尽可能多的灵活性。

      示例基于AND 的断言代码如下所示:

      String response = new String(ResponseData);
      
      if (response.contains(vars.get("v1")) && response.contains(vars.get("v2"))) {
          Failure = false;
      } else {
          Failure = true;
          FailureMessage = "Specified conditions were not met";
      }
      

      你可以参考How to use BeanShell: JMeter's favorite built-in component指南以获得更详细的解释和食谱种类。

      【讨论】:

        猜你喜欢
        • 1970-01-01
        • 1970-01-01
        • 2020-01-08
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 2017-04-09
        • 1970-01-01
        相关资源
        最近更新 更多