postman通过scripts设置常见的断言
pm.globals.set(“key”,”value”);
全局变量会应用在所有用例集合中,仅适用于快速创建原型设计的需求,非必要不轻易使用。
pm.globals.unset(“全局变量名”);
pm.environment.unset(“环境变量名”);
pm.globals.clear();
pm.environment.set(“key”,”value”);
环境变量作用域小于全局变量,用于将数据从一个请求传递到另一个请求,如鉴权token。
pm.environment.get(“环境变量名”);
pm.variables.set(‘test’,token);
局部变量仅在特定请求执行的上下文中运用,优先级小于全局变量,小于集合,小于环境变量。如果全局/集合/环境变量名和局部变量名相同的情况下,默认使用局部变量。
pm.variables.get(‘test’);
pm.test(“Body matches string”,function(){
pm.expect(pm.response.text()).to.include(“string”);
});
pm.test(“Body is correct”,function(){
pm.response.to.have.body(“string”);
});
pm.test(“test name”,function(){
var jsonData = pm.response.json();
pm.expect(jsonData.value).to.eql(100);
});
pm.test(“less than 200ms”,function(){
pm.expect(pm.response.responseTime).to.be.below(200);
});
pm.response.to.have.status(200);
pm.expect(pm.response.code).to.be.oneOf([201,202]);
var jsonObject = xml2Json(responseBody);
pm.test(“查询成功“,function(){
var bizData1 = (pm.environment.get(“userId”));//获取环境变量中的userId
var jsonData1 = pm.response.json();//获取返回响应体的数据,转换为json
pm.expect(jsonData1.bizData.userId).to.eql(bizData1);//获取返回响应体的userId,和环境变量的userId对比
})
总结: 做了两次接口测试,对用到的一些断言进行了记录。涨经验的路上也要不断总结呐~
|