首页 > 解决方案 > 响应断言中的附加“/”(斜杠)显示在 Jmeter 中

问题描述

我想使用响应断言来匹配来自服务器的响应,当我收到响应时,它显示为 { "per_page": 6, "total": 12, "data": [ { "last_name": "Lawson", " id": 7, "头像": "https://reqres.in/img/faces/7-image.jpg", "first_name": "Michael", "email": "michael.lawson@reqres.in" },

但作为响应断言,它显示为断言失败消息:测试失败:文本预计包含/{“per_page”:6,“total”:12,“data”:[{“last_name”:“Lawson”,“id”: 7、“头像”:“https://reqres.in/img/faces/7-image.jpg”,“first_name”:“迈克尔”,“电子邮件”:“michael.lawson@reqres.in”},{因此,即使它匹配但由于添加 / (斜杠),它也会失败。

在此处输入图像描述 在此处输入图像描述

标签: jmeterperformance-testingjmeter-pluginsassertion

解决方案


JMeter 不会在任何地方“添加”斜线,这只是一个可视化问题,因为不匹配,您的模式会被斜线包围,基本上 JMeter 无法找到您在应用程序的“要测试的模式”中放入的内容回复

演示:

在此处输入图像描述

请参阅ResponseAssertion 源中的第 472 和 480 行

因此,请确保您的响应包含该模式,并注意每个换行符或空格都很重要,因此如果您的服务器返回非格式化字符串并且您期望一个“漂亮”的字符串 - 断言将失败。

如果没有看到您的实际响应,我们无法建议最佳选择,但是就稳健性和可靠性而言,比较 2 个 JSON 实体的全文对我来说似乎不是一个好方法,您可能需要考虑JSON AssertionJSON JMESPath Assertion


推荐阅读