我想验证响应头是否唯一。如果响应头不是唯一的,我的邮递员测试将失败。因为如果有更多具有相同名称的响应标头,则会附加这些值,并且我的期望会失败。
因此,我需要邮递员测试以验证响应标头是否唯一。我该怎么办?
答案 0 :(得分:0)
不确定这是否行得通,但它正在获取响应标头密钥并将其另存为headers
变量。然后,在该值上执行_.uniq
,创建一个新的array
,该数据将去除重复项,然后将其设置为uniqueHeaders
变量。
测试期望这两个变量是相同的,如果我正确地做到了,那么标头应该匹配并且检查将通过,如果响应标头是重复的(无论如何实际上都不应该发生),那么检查将失败,因为uniqueHeaders
与实际的响应标头不匹配。
pm.test("Checks Headers", () => {
let headers = _.keys(pm.response.headers.toObject())
let uniqueHeaders = _.uniq(_.keys(pm.response.headers.toObject()))
pm.expect(headers).to.eql(uniqueHeaders)
});
我还没有测试过,这是检查重复项的可怕解决方案。您至少可以使用pm.response.headers
值并尝试并使用它来获得更好的工作解决方案。