postman断言
断言工作原理:通过js代码写的。
1、断言响应状态码:
Status code:Code is 200
pm.test("Status code is 200", function () {
pm.response.to.have.status(200);
});
参数1:Status code is 200 ,这个参数可以任意修改。不影响断言。
作用是:在断言结束后,显示给用户,断言结果提示文字。不管断言成功还是失败这个提示一样。
参数2:function () {
pm.response.to.have.status(200) 这是一个匿名函数。postman的响应结果中,应该有响应状态码200。
这里的状态码可以更改pm.response.to.have.status(500)
2、断言包含某字符串:(整个大的响应结果中有,就可以)
Response body: Contains string
pm.test("Body matches string", function () {
pm.expect(pm.response.text()).to.include("string_you_want_to_search");
});
参数1:Body matches string 这个参数可以任意修改。不影响断言。
作用是:在断言结束后,显示给用户,断言结果提示文字。不管断言成功还是失败这个提示一样。
参数2:pm.expect(pm.response.text()).to.include("string_you_want_to_search")
在响应的结果文本中,包含搜索的字符串
pm.expect(pm.response.text()).to.include("用户名") 断言响应中包含有“用户名”
3、断言json数据:(具体到某个key的值包含)
Response body : JSON value check
pm.test("Your test name", function () {
var jsonData = pm.response.json();
pm.expect(jsonData.value).to.eql(100);
});
参数1:Your test name 这个参数可以任意修改。不影响断言。
作用是:在断言结束后,显示给用户,断言结果提示文字。不管断言成功还是失败这个提示一样。
参数2:function () { 是一个匿名函数调用
var jsonData = pm.response.json(); 定义一个变量
pm.expect(jsonData.value).to.eql(100)
pm.expect(jsonData.code).to.eql(200) 断言code是否等于200