【发布时间】:2020-09-05 21:37:16
【问题描述】:
我想比较两个 URL:第一个来自响应,第二个来自上传的 CSV 文件。
我想检查响应中的 URL 是否与链接到 CSV 文件中请求的行的 URL 相同。
请求正文
{
"brandTrigram": "{{brandTrigram}}",
"countryId": "{{countryId}}",
"languageId": "{{languageId}}"
}
测试
pm.test("Check returned data", function () {
var jsonData = pm.response.json();
pm.expect(jsonData.URL).to.eql(pm.variables.get("URL"));
});
CSV 文件
brandTrigram,countryId,languageId,URL
car,ca,eng,https://ca.cartier.com/en-ca/others/privacy-policy.html
car,ae,ara,https://www.cartier.ae/ar-ae/%D8%BA%D9%8A%D8%B1-%D8%B0%D9%84%D9%83/%D8%B3%D9%8A%D8%A7%D8%B3%D8%A9-%D8%A7%D9%84%D8%AE%D8%B5%D9%88%D8%B5%D9%8A%D8%A9.html
我在 CSV 文件的第一次迭代中收到以下错误:
Check returned data | JSONError: Unexpected token 'h' at 1:1 https://ca.cartier.com/en-ca/others/privacy-policy.html ^
所以 javascript 测试没有做我们想要的比较工作:/,我该如何解决?
【问题讨论】:
-
响应正文是什么样的?
-
@DannyDainton 实际上在响应正文中有预期的 URL(例如 ca.cartier.com/en-ca/others/privacy-policy.html)
-
什么是结构?它只是对象中的一个键
URL。试图了解jsonData.URL代表什么。没有所有细节,人们怎么能帮助你。 -
@DannyDainton
jsonData.URL是预期的响应,我们提供 3 个值,我们应该在响应中获得一个 URL,我想要从我的 JS 测试中确保这个 URL 是相同的 URL根据 CSV 文件链接到请求中的值。 -
我知道您要做什么,为什么用响应正文的示例更新问题如此困难?您在那里有一个请求正文,只需执行与响应相同的操作。是
{ "URL": "https://example.com" },就是这样还是其他结构?
标签: javascript postman postman-collection-runner