postman tests 测试实例

1、返回状态码是200
pm.test("返回状态码是200", function () {
pm.response.to.have.status(200);
});

tests["返回状态码是200"] = responseCode.code === 200;

 

2、返回时间小于200毫秒
pm.test("返回时间小于200毫秒", function () {
pm.expect(pm.response.responseTime).to.be.below(200);
});

tests["返回时间小于200毫秒"] = responseTime < 200;
pm.test("返回的是字符串", function () {

pm.response.to.be.string;
});

3.设置环境变量
postman.setEnvironmentVariable("key", "value");
pm.environment.set("variable_key", "variable_value");

4.将嵌套独享设置为环境变量

var array = [1, 2, 3, 4];

postman.setEnvironmentVariable("array", JSON.stringify(array, null, 2));

var obj = { a: [1, 2, 3, 4], b: { c: 'val' } };

postman.setEnvironmentVariable("obj", JSON.stringify(obj));

5.获取环境变量
postman.getEnvironmentVariable("key");
获取一个环境变量(其值是一个字符串对象)
var array = JSON.parse(postman.getEnvironmentVariable("array"));

var obj = JSON.parse(postman.getEnvironmentVariable("obj"));

6.清除一个环境变量

postman.clearEnvironmentVariable("key");
pm.environment.unset("variable_key");


7.设置一个全局变量

postman.setGlobalVariable("key", "value");

pm.globals.set("variable_key", "variable_value");

8.获取全局变量


postman.getGlobalVariable("key");

pm.globals.get("variable_key");

9.清除全局变量

postman.clearGlobalVariable("key");
pm.globals.unset("variable_key");

10.检查response是否包含一个字符串

tests["Body matches string"] = responseBody.has("string_you_want_to_search");


11.将xml体转换为JSON对象

var jsonObject = xml2Json(responseBody);

12.检查response是否等于一个字符串

tests["Body is correct"] = responseBody === "response_body_string";


13.检查JSON值

var data = JSON.parse(responseBody);
tests["Your test name"] = data.value === 100;


14.内容类型存在(不区分大小写的检查)

tests["Content-Type is present"] = postman.getResponseHeader("Content-Type");

15.内容类型存在(区分大小写)

tests["Content-Type is present"] = responseHeaders.hasOwnProperty("Content-Type");

 

16.响应时间在一个特定的范围内(包括下限和上限)


tests["Response time is acceptable"] = _.inRange(responseTime, 100, 1001);

17.代码包含一个字符串

tests["Status code name has string"] = responseCode.name.has("Created");


18.成功的POST请求状态码

tests["Successful POST request"] = responseCode.code === 201 || responseCode.code === 202;

19.将TinyValidator用于JSON数据

var schema = {
"items": {
"type": "boolean"
}
};

var data1 = [true, false];

var data2 = [true, 123];

tests["Valid Data1"] = tv4.validate(data1, schema);

tests["Valid Data2"] = tv4.validate(data2, schema);

console.log("Validation failed: ", tv4.error);

20.解码base64编码数据

var intermediate,
base64Content,
rawContent = base64Content.slice('data:application/octet-stream;base64,'.length);


intermediate = CryptoJS.enc.Base64.parse(base64content);
tests["Contents are valid"] = CryptoJS.enc.Utf8.stringify(intermediate);

参考网址:
https://blog.csdn.net/weixin_34407348/article/details/93331261
https://blog.csdn.net/qq1124794084/article/details/78049456
https://www.jianshu.com/p/61cfcb436ee4 Postman使用手册4——API test

上一篇:unittest快速装载目前下所有测试用例的方法


下一篇:解决pycharm 提示no tests were found的问题