📅  最后修改于: 2021-01-08 01:41:29             🧑  作者: Mango
从上一节我们可以了解到,测试脚本是在发送请求后执行的,服务器已经收到响应。
在这里,我们将讨论一些测试示例。大多数示例都可以在邮递员的摘录中找到。我们可以为一个请求运行多个测试。
设置环境变量
pm.environment.set("variable_key", "variable_value");
我们还可以将嵌套对象设置为环境变量:
var array = [1, 2, 3, 4];
pm.environment.set("array", JSON.stringify(array, null, 2));
var obj = { a: [1, 2, 3, 4], b: { c: 'val' } };
pm.environment.set("obj", JSON.stringify(obj));
获取环境变量
pm.environment.get("variable_key");
清除环境变量
pm.environment.unset("variable_key");
设置集合变量
pm.collectionVariables.set(variableName:String, variableValue:String);
获取集合变量
pm.collectionVariables.get(variableName:String);
清除集合变量
pm.collectionVariables.unset(variableName:String);
设置全局变量
pm.globals.set("variable_key", "variable_value");
获取全局变量
pm.globals.get("variable_key");
清除全局变量
pm.globals.unset("variable_key");
在响应正文中搜索字符串
pm.test("Body Contains", function () {
pm.expect(pm.response.text()).to.include("search_string");
});
检查响应主体是否等于字符串
pm.test("Body is correct", function () {
pm.response.to.have.body("response_body_string");
});
检查JSON值
pm.test("Your test name", function () {
var jsonData = pm.response.json();
pm.expect(jsonData.value).to.eql(100);
});
检查Content-Type标头是否存在
pm.test("Content-Type header is present", function () {
pm.response.to.have.header("Content-Type");
});
响应时间小于200毫秒
pm.test("Response time is less than 200ms", function () {
pm.expect(pm.response.responseTime).to.be.below(200);
});
状态码为200
pm.test("Status code is 200", function () {
pm.response.to.have.status(200);
});
代号名称包含一个字符串
pm.test("Status code name contains a string", function () {
pm.response.to.have.status("Created");
});
成功的POST请求状态代码
pm.test("POST request Successful ", function () {
pm.expect(pm.response.code).to.be.oneOf([201,202]);
});