【发布时间】:2019-07-21 17:13:14
【问题描述】:
我在 Postman 中有一个 POST 请求,测试如下
pm.test("CREATED - Status code is 201", function () {
pm.response.to.have.status(201);
});
var namespaceLink = postman.getResponseHeader("Location");
var namespaceId = namespaceLink.substring(namespaceLink.lastIndexOf('/') + 1);
pm.environment.set("IdOfNamespace", namespaceId);
请求失败并显示“400 Bad Request”。 在这种情况下,我希望测试失败并出现“预期 201 但得到 400”,但测试失败并出现以下“评估测试脚本时出错:TypeError: Cannot read property 'substring'未定义的" 我还在响应正文中收到以下消息:“命名空间 'AUTO_NS' 已经在使用此代码”
由于请求作为自动化测试的一部分运行(有很多请求)然后生成报告,我想设置测试的方式在报告中更清楚地说明原因失败。 IE。来自响应正文的消息。
您能帮我解答一下(作为测试的一部分)吗?
【问题讨论】:
-
测试将与
pm.test()函数之外的其他代码分开运行和失败。如果Location响应标头不是失败响应的一部分,那么它也不会知道namespaceLink是什么参考。您可以将其包装在if语句或try/catch块中吗?
标签: postman