如何使用响应主体作为结果让我的 Postman 测试通过?

How do I get my Postman tests to pass using response body as the results?

我第一次尝试在 Postman 中编写测试。我正在使用包含 pm.expect.

pm.test 方法

这是我的测试:

//contract details tests
pm.test("Contract data is correct", function() {
        pm.expect(pm.response.json().results.contractNb).to.equal("00002");
        pm.expect(pm.response.json().results.progSrvcNm).to.equal("009");
});

我的回复是这样的:

{
    "contractNb": "00002",
    "progSrvcNm": "009",
    "contractPartyNm": "testContract",
    "terms": 30,
    "startDt": "2018-01-01"
}

鉴于您的响应正文数据 - 如果您只是删除 expect 语句的 .results 部分,检查将通过。

pm.test("Contract data is correct", () => {
    pm.expect(pm.response.json().contractNb).to.equal("00002")
    pm.expect(pm.response.json().progSrvcNm).to.equal("009")
})

正确的代码如 Danny Dainton 发布的那样。

pm.test('Contract details are correct for the passed in contract ID', () => {
    pm.expect(pm.response.json().contractNb).to.equal("00002");
    pm.expect(pm.response.json().progSrvcNm).to.equal("009");
});