Postman学习笔记(二)

Postman实战问题归总

1、如何查看Tests和Pre-request Script里面console.log()打印的值。
  答:Postman顶部View——Show Postman Console,即可看到输出和相关请求和返回内容记录。如下图所示

Postman学习笔记(二)_第1张图片

2、如果请求体返回的是JSON字符串,那么Tests断言时首先得先把JSON字符串转换成JSON对象,再去校验JSON值。

答:

1 pm.test("IsSucess为true", function () {
2     //json字符串转json对象
3     var jsonData = JSON.parse(pm.response.json());
4     pm.expect(jsonData.IsSucess).to.eql(true);
5 });

3、如果返回体的值为xml格式的,那么Tests如何校验xml里数据的值。
  例:接口返回体xml的值如下。

 1 xml version="1.0" encoding="UTF-8"?>
 2 <response>
 3     <options>
 4         <option>
 5             <key>123key>
 6             <value>测试value>
 7         option>
 8         <option>
 9             <key>456key>
10             <value>测试2value>
11         option>
12     options>
13     <code>0000code>
14     <message>返回成功message>
15 response>

  那么如何校验到以上返回体xml中的第一个option的value值和如何校验到xml里的message的值。

答:

 1 var jsonObject = xml2Json(responseBody);
 2 //校验接口status的code
 3 pm.test("Status code is 200", function () {
 4     pm.response.to.have.status(200);
 5 });
 6 //校验第一个option的value值
 7 pm.test("返回值第一个值是测试", function () {
 8     var jsonvalue = jsonObject.response.options.option[0].value;
 9     pm.expect(jsonvalue).to.eql("测试");
10 });
11 //校验message的值
12 pm.test("message is 返回成功", function () {
13     var jsonmessage = jsonObject.response.message;
14     pm.expect(jsonmessage).to.eql("返回成功");
15 });

4、Postman监视器Monitors,监视器只适用于外网的接口,不适用于公司内网的接口监控。内网接口做监视器调用时会有以下报错:

  Error:getaddrinfo ENDOTFOUND XXX.XXX XXX.XXX

5、Postman功能点:

(1)测试环境的配置,postman支持全局变量配置

(2)测试setup配置,postman支持pre-script脚本

(3)测试断言,postman支持test,如果你不会写代码,postman提供了好多test模版点一下就能用,修改下参数,如果这点东西都不想学就别做接口测试了。

(4)测试执行,postman支持collection集合执行,还可以设置执行次数,执行时间

(5)调试的话,postman有postman console

(6)团队协作的话,postman支持teamwork,可以使用team workspace,还支持collection分享,即使免费的一个月可以分享2000次,还可以导出

(7)持续集成可以用Newman Jenkins啥的

(8)postman还支持mock数据

持续更新中~~~~

 

你可能感兴趣的:(Postman学习笔记(二))