我想区分流程中 if 函数内的 2 个不同的测试。
这是我的情况:我有一个端点返回 400,并且以下两个测试都失败了:
pm.test("Response status code is 200", function () {
pm.response.to.have.status(200);
});
和
pm.test ("Response time is less than 200ms", () => {
pm.expect (pm. response. responseTime) .to.be.below(200);
});
但是,我只关心回报不是 200。
我该如何将其放入此工作流程框中?
不太清楚您需要什么,但根据我对您问题的理解,这里有一些可能有用的信息:
您可以使用带有条件语句的单个测试来检查状态代码是否不是 200,如果状态代码不是 200,则无论实际值如何,都会通过:
pm.test("Status code is not 200", function () {
pm.expect(pm.response.code).to.not.equal(200);
});
如果您想保留两个单独的测试,可以使用条件(if 块)仅在第一个测试通过时才运行第二个测试:
pm.test("Response status code is 200", function () {
pm.response.to.have.status(200);
});
if (pm.response.code === 200) {
pm.test("Response time is less than 200ms", () => {
pm.expect(pm.response.responseTime).to.be.below(200);
});
}
关于如何将其放入工作流程框中,也许这会有所帮助:
IF pm.response.code != 200 THEN
pm.test("Status code is not 200", function () {
pm.expect(pm.response.code).to.not.equal(200);
})
END IF