利用 Postman 中 Tests 断言校验返回结果

前言

Postman目前是一款很火的接口测试工具,它有着非常强大结果判断能力。
为什么说强大呢,因为Postman有自带的校验脚本,根本不需要我们去学习JS脚本语言,对于代码能力为0的各位测试小伙伴来说,特别的友好。

通过Tests的代码校验,可以很快的得到结果判断。如果校验通过,则断言为PASS,如果校验失败,则断言为FAIL

Response body:Contains string (校验返回结果中是否包含某个字符串)

代码如下:
pm.test("Body matches string", function () {
pm.expect(pm.response.text()).to.include("string_you_want_to_search");
});


例子

结果

Response body:Is equal to a string (校验返回结果是否等于该字符串)

注意: 这个校验,必须是接口的返回结果与字符串要一模一样。
代码如下:
pm.test("Body is correct", function () {
pm.response.to.have.body("response_body_string");
});

例子

结果

Response body:JSON value check(校验返回结果中某个字段值是否等于某个值)

代码如下:
pm.test("Your test name", function () {
//设置jsonData变量用来接收postman的json格式的返回数据
var jsonData = pm.response.json();
//判断返回数据中,msg字段是结果是否为OK
//此处与需要注意一下json格式,jsonData为整个接口的返回数据,jsonData.msg是第一层级字段
pm.expect(jsonData.value).to.eql(100);
});
例子

结果

Response header:Content-type header check(校验响应头是否包含某个值)

代码如下:
pm.test("Content-Type is present", function () {
pm.response.to.have.header("Content-Type");
});

例子

结果

Response time is less than 200ms(校验响应时间是否少于200ms(毫秒))

代码如下:
pm.test("Response time is less than 200ms", function () {
pm.expect(pm.response.responseTime).to.be.below(200);
});

例子PASS

例子FAIL

Status code:Code is 200(校验响应头是否包含某个值)

代码如下:
pm.test("Status code is 200", function () {
pm.response.to.have.status(200);
});

例子PASS

例子FAIL

至此,Postman断言的多种方式已经学习完毕。加油!!

============================================ PS ============================================
  • 个人工作wx:【NM2021712

  • 功能测试,自动化测试,性能测试,测试开发,测试架构方面的技术问题欢迎与加微与我交流,加时请备注下:博客园-亚萌
请大家支持原创,尊重原创,如要转载,请注明出处:“转载自:https://www.cnblogs.com/zymnstlm”,谢谢!!有任何疑问,欢迎大家留言区艾特我。
posted @ 2019-10-29 21:07  亚萌  阅读(3033)  评论(2编辑  收藏  举报