【问题标题】:JMeter Response Assertion DiffJMeter 响应断言差异
【发布时间】:2017-07-21 21:30:15
【问题描述】:

我想准确查看我的“实际”与“预期”断言的不同之处。有没有办法在 JMeter 中做到这一点?

简单的例子(我需要多行数据):

预期响应(断言):"apple banana orange"

实际回复:"apple pear orange"

在上面我正在寻找某种差异来显示预期与实际的具体差异。 (大意是:实际响应中的“梨”,预期的“香蕉”)

现在,当文本响应 -> 子字符串断言失败时,jmeter 会让我知道它失败并返回整个预期/实际字符串。我本质上是在寻找文本块中究竟有什么不同的特定差异。

【问题讨论】:

    标签: jmeter


    【解决方案1】:

    由于您的问题如此笼统,因此很难确切地说出什么会起作用。

    1. 在许多情况下,响应断言具有多种条件,RegEx 可以为您提供所需的输出。例如,您的示例可以表示为 3 个条件:

      (虽然这个 RegEx 有效,但我确信它可以改进,但你明白了)

      所以这个断言会给你一个更精确的输出,例如输入apple pear orange,失败会是:

      消息应该匹配 /^[^ ]+banana .*/

      当您有一堆独立的验证时,这种方法很好,每个验证都希望得到一个结果。但是,它会在第一次失败时停止,而且如果您有 200 次验证,那么对它们进行编码变得不可行。

    2. 更强大的方法是使用 BeanShell 断言,您可以在其中使用您的示例编写任何规则和任何输出:

      所以比如输入apple pear orange,失败会是:

      断言失败消息:2:banana mismatches pear

    【讨论】:

      【解决方案2】:

      您可以添加正则表达式作为后处理器。添加默认值作为 NOT_FOUND 变量 fruits

      并在 Jmeter 变量上添加响应断言与您的断言。

      【讨论】:

        猜你喜欢
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        相关资源
        最近更新 更多