postman

postman接口测试

postman界面:

postman

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

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一起使用
经常用于不能重复的数据;
{{KaTeX parse error: Expected 'EOF', got '}' at position 10: timestamp}̲}:生成当前时间的时间戳 {{randomInt}}:生成0~1000的随机数
{{$guid}}:生成随机的guid字符串
用例的批量执行:
postman
数据驱动:
将测试数据保存本地,一次性运行;
在参数里面的数据文件值和取全局变量一致,使用{{}},在断言里面取数据文件的值使用:data.字段名。
postman

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

上一篇:SAP PM入门系列21 - IE07 Equipment List (Multilevel)


下一篇:冲刺随笔5