运行 Postman中基于HTTP方法类型的不同采集测试
Run different collection test based on the HTTP method type in Postman
我已经定义了几个集合测试,这些测试在集合中的每个单独测试之后触发。见下文
pm.test("Status code is not of error type", function() {
pm.expect(pm.response.code).to.not.eql(500);
});
pm.test("Content-Type is present", function () {
pm.response.to.have.header("Content-Type");
});
pm.test("Response must be valid json", function () {
pm.response.to.be.withBody;
pm.response.to.be.json;
});
我想进一步扩展它们。理想情况下,我想 运行 根据发送它们的方法类型进行不同的测试。例如,我想针对以下内容测试每个 DELETE 请求。
pm.expect(pm.response.code).to.be.oneOf([204, 409])
是否可以在集合级别定义它?还是我需要将此行粘贴到我的每个删除请求中?
为了提高可见性,最好在请求级别进行这样的测试,或者将类似的请求分组到一个文件夹中并在文件夹级别应用测试。 folder/collection 级别测试的目的是在广泛的范围内应用相同的测试。
如果您真的想这样做,可以将测试包装在 if
条件中:
if (pm.request.method === 'DELETE') {
pm.expect(pm.response.code).to.be.oneOf([204, 409]);
}
我已经定义了几个集合测试,这些测试在集合中的每个单独测试之后触发。见下文
pm.test("Status code is not of error type", function() {
pm.expect(pm.response.code).to.not.eql(500);
});
pm.test("Content-Type is present", function () {
pm.response.to.have.header("Content-Type");
});
pm.test("Response must be valid json", function () {
pm.response.to.be.withBody;
pm.response.to.be.json;
});
我想进一步扩展它们。理想情况下,我想 运行 根据发送它们的方法类型进行不同的测试。例如,我想针对以下内容测试每个 DELETE 请求。
pm.expect(pm.response.code).to.be.oneOf([204, 409])
是否可以在集合级别定义它?还是我需要将此行粘贴到我的每个删除请求中?
为了提高可见性,最好在请求级别进行这样的测试,或者将类似的请求分组到一个文件夹中并在文件夹级别应用测试。 folder/collection 级别测试的目的是在广泛的范围内应用相同的测试。
如果您真的想这样做,可以将测试包装在 if
条件中:
if (pm.request.method === 'DELETE') {
pm.expect(pm.response.code).to.be.oneOf([204, 409]);
}