postman11

Posted 郑心爽

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了postman11相关的知识,希望对你有一定的参考价值。

postman接口测试

postman界面:

postman日常操作:
**全局变量:**把共同使用的变量放到全局变量中,调用时只需要用变量名即可,适用于所有的接口。

环境变量的使用:
公司中至少有是三个环境:开发环境,测试环境,验收环境;
postman中可以演示不同的环境;
设置环境变量:
环境变量只适用于自己的环境,其他环境不适用:

错误环境下的环境变量使用:

接口实现关联:
接口测试,如何实现接口关联;
一:

把要获取的值转为json格式的数据
var jsondata = pm.response.json()
打印日志
console.log(jsondata)
用json表达式提取值
var doer = jsondata.result.city
打印日志
console.log(doer)
设置一个全局变量
pm.globals.set("域名",doer);

二:

// 获取响应体的文本内容
var res = responseBody;
consloe.log(res)
//转成json对象
var jsonobj = JSON.parse.responseBody
//通过json表达式提取值
var z.result.provinces
pm.globals.set("jg",z);

接口测试中如何实现上一个接口的返回值作为下一个接口的参数。

设置断言;引用时:通过在路径中使用:
将第一个接口设置断言,把返回体弄成json,用json表达式进行取值,将这个值设置为全局变量,在另一个接口中使用全局变量,实现接口关联.
**断言:**用于预期结果和实际结果进行对比

tests对断言的几种方式
// 验证接口中状态码
pm.test("验证状态码", function () 
    pm.response.to.have.status(200);
); 
// 验证返回体重是否存在该字符串
pm.test("Body matches string", function () 
    pm.expect(pm.response.text()).to.include("北京");
);

// 通过json里的key:value进行验证(如果通过成功error_code=0)
pm.test("Your test name", function () 
    var jsonData = pm.response.json();
    pm.expect(jsonData.error_code).to.eql(0);
);
// 返回文档中的所有内容都要拿出来(返回文本内容极少的情况下才使用)
pm.test("Body is correct", function () 
    pm.response.to.have.body("response_body_string");
);
// 验证响应头中是否包含对应的内容
pm.test("Content-Type is present", function () 
    pm.response.to.have.header("Etag");
);
// 此次的响应时间和括号中的毫秒进行对比是否小于括号中的毫秒
pm.test("Response time is less than 200ms", function () 
    pm.expect(pm.response.responseTime).to.be.below(200);
);

动态参数:
postman中自带的内置方法;和fiddler一起使用

经常用于不能重复的数据;

$timestamp:生成当前时间的时间戳

$randomInt:生成0~1000的随机数

$guid:生成随机的guid字符串
用例的批量执行:

数据驱动:
将测试数据保存本地,一次性运行;
在参数里面的数据文件值和取全局变量一致,使用,在断言里面取数据文件的值使用:data.字段名。


txt文档中的光标要放在最后一个字母后面,不要下拉一行,不然运行时会报错

以上是关于postman11的主要内容,如果未能解决你的问题,请参考以下文章

postman 自动生成 curl 代码片段

postman添加断言

接口测试 - 用Postman进行Apitest

Postman使用手册4——API test

在 Java 的 GraphQL 查询中添加片段

postman测试实例--断言