Postman测试脚本编写例子

1.设置环境变量 设置环境变量
postman.setEnvironmentVariable("key", "value");
2.将嵌套对象设置为环境变量 将嵌套对象设置为环境变量
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));
3.获取环境变量 获取环境变量
postman.getEnvironmentVariable("key");
4.获取一个环境变量(其值是一个字符串对象) 获取一个环境变量(其值是一个字符串对象)
// These statements should be wrapped in a try-catch block if the data is coming from an unknown source.
var array = JSON.parse(postman.getEnvironmentVariable("array"));
var obj =JSON.parse(postman.getEnvironmentVariable("obj"));
5.清除环境变量 清除环境变量
postman.clearEnvironmentVariable("key");
6.设置一个全局变量 设置一个全局变量
postman.setGlobalVariable("key", "value");
7.获取全局变量 获取全局变量
postman.getGlobalVariable("key");
8.清除全局变量 清除全局变量
postman.clearGlobalVariable("key");
9.检查响应体是否包含一个字符串 检查响应体是否包含一个字符串
tests["Body matches string"] =responseBody.has("string_you_want_to_search");
10. 将XML 体转换为JSON对象 对象
var jsonObject = xml2Json(responseBody);
11.检查响应体是否等于一个字符串 检查响应体是否等于一个字符串
tests["Body is correct"] = responseBody === "response_body_string";
12. 检查JSON值 值
var data = JSON.parse(responseBody);
tests["Your test name"] = data.value === 100;
13.内容类型存在(不区分大小写的检查) 内容类型存在(不区分大小写的检查)
tests["Content-Type is present"] = postman.getResponseHeader("Content-Type");
//Note: the getResponseHeader() method returns the header value, if it exists.
14.内容类型存在(区分大小写) 内容类型存在(区分大小写)
tests["Content-Type is present"] = responseHeaders.hasOwnProperty("Content-Type");
15. 响应时间小于200ms
tests["Response time is less than 200ms"] = responseTime < 200;
16.响应时间在一个特定的范围内(包括下限,上限排除) 响应时间在一个特定的范围内(包括下限,上限排除)
tests["Response time is acceptable"] = _.inRange(responseTime, 100, 1001);
// _ is the inbuilt Lodash v3.10.1 object, documented at https://lodash.com/docs/3.10.1
17. 状态码是200
tests["Status code is 200"] = responseCode.code === 200;
18.代码名称包含一个字符串 代码名称包含一个字符串
tests["Status code name has string"] = responseCode.name.has("Created");
19.POST请求状态代码成功 请求状态代码成功
tests["Successful POST request"] = responseCode.code === 201 || responseCode.code === 202;
20. 将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);
21. 解码base64编码数据 编码数据
var intermediate, base64Content, // assume this has a base64 encoded value
rawContent = base64Content.slice('data:application/octet-stream;base64,'.length);
intermediate = CryptoJS.enc.Base64.parse(base64content); // CryptoJS is an inbuilt
object, documented here: https://www.npmjs.com/package/crypto-js tests["Contents
are valid"] = CryptoJS.enc.Utf8.stringify(intermediate); // a check for non-emptiness
原文地址:https://www.cnblogs.com/wbw-test/p/11506942.html