我在邮递员中有一个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:无法读取属性'substring'的” 我还在响应正文中收到以下消息:“ 名称空间'AUTO_NS'已经在使用此代码”
由于该请求是作为自动化测试的一部分运行的(有很多请求),然后生成报告,因此我想以这样的方式设置测试:失败。即来自响应正文的消息。
您能帮我做些什么(作为测试的一部分)吗?
答案 0 :(得分:1)
您只需将代码包含在测试函数中即可。当您的filters.FullName._contains =
断言失败时,chai会引发AssertionError,这意味着将不会执行测试函数中的其他行。在其他情况下,您很好。试试这个:
pm.response.to.have.status(201);