在邮递员测试中使用哪个代码段来验证标头值的一部分

时间:2019-12-18 09:11:18

标签: validation testing header postman code-snippets

在API POST请求的响应内,该位置作为键返回到标头中,并且值由两部分组成:URL路径+唯一ID

Screenshot Postman header

我想在Postman测试中仅验证值的URL路径,因为在每个新请求之后,唯一ID都会不同。

响应中的位置标头值示例:

api/v1/users/cbca75db-7d7d-4687-9aa0-c68f4rg46465/customers/EXXXXXXXXX/emailaddresses/5637454148

我只想验证:

api/v1/users/cbca75db-7d7d-4687-9aa0-c68f4rg46465/customers/EXXXXXXXXX/emailaddresses/

到目前为止,我有:

    pm.response.to.have.header("Location");
    pm.response.to.be.header("Location", "api/v1/users/cbca75db-7d7d-4687-9aa0-c68f4rg46465/customers/E000088/emailaddresses");

但这不是100%正确

1 个答案:

答案 0 :(得分:0)

如果您只想检查标头包含字符串的一部分,则可以使用以下代码:

pm.test("Location Header", () => {
        pm.response.to.have.header("Location");
        pm.expect(pm.response.headers.get("Location")).to.include("api/v1/users/cbca75db-7d7d-4687-9aa0-c68f4rg46465/customers/EXXXXXXXXX/emailaddresses")
    })

我不知道您的guidid在URL路径中是否会更改,因此这是非常硬编码的,并非动态的。