JMeter响应断言失败

时间:2013-10-15 00:35:22

标签: jmeter assertion

即使响应正确,我也会收到断言失败。但它在html代码之前和之后说了一些预期的“/”。那是为什么?

适用于:仅限主要样本
要测试的响应字段:文本响应
模式匹配规则:包含

要测试的模式: < HTML>
<体>
< h1>航班请求 - 5< / H1>
< p>出发机场代码:GBG< / p为H.
< p> arrivalAirportCode:STM< / p为H.
< p>乘客人数:12< / p为H.
< p>状态:已创建< / p为H.
< /体>
< / HTML>

响应:

< HTML>
<体>
< h1>航班请求 - 5< / H1>
< p>出发机场代码:GBG< / p为H.
< p> arrivalAirportCode:STM< / p为H.
< p>乘客人数:12< / p为H.
< p>状态:已创建< / p为H.
< /体>
< / HTML>

断言失败消息:测试失败:预期包含 / <的文字HTML>
<体>
< h1>航班请求 - 5< / H1>
< p>出发机场代码:GBG< / p为H.
< p> arrivalAirportCode:STM< / p为H.
< p>乘客人数:12< / p为H.
< p>状态:已创建< / p为H.
< /体>
< / HTML>的 /

3 个答案:

答案 0 :(得分:3)

我通过创建更多“要测试的模式”来解决它,并且在每个“要测试的模式”中只有一行。它被比较了。可能它是一个“看不见的”空白或其他东西。

答案 1 :(得分:1)

这是因为当您选择Contains或Matches模式匹配规则时,JMeter在内部使用正则表达式。尽可能尝试使用equals规则,但要注意换行符和空白字符,这些字符在视觉上不同但实际上是。

更多信息:http://jmeter.apache.org/usermanual/component_reference.html#Response_Assertion

答案 2 :(得分:0)

因为实际上你的脚本没有运行,所以在HTML视图中查看监听器“树中的响应”,你会发现脚本没有运行,页面实际上并没有导航,尽管响应显示为已通过。