在 Postman 中编写测试脚本可以帮助你自动化验证 API 的响应。测试脚本使用 JavaScript 编写,通常用于检查响应状态码、响应头、响应体等。以下是编写测试脚本的步骤和一些常见示例:
编写测试脚本的步骤
-
选择请求:
- 打开 Postman,选择或创建一个请求。
-
打开测试脚本编辑器:
- 在请求面板下方,点击 “Tests” 标签,进入测试脚本编辑器。
-
编写测试脚本:
- 使用 JavaScript 编写测试脚本。
- 使用
pm
对象提供的各种方法和属性来编写测试。
-
发送请求并查看测试结果:
- 点击 “Send” 按钮发送请求。
- 在响应面板的 “Tests” 标签中查看测试结果。
常见测试脚本示例
-
检查响应状态码:
pm.test("Status code is 200", function () { pm.response.to.have.status(200); });
-
检查响应时间:
pm.test("Response time is less than 500ms", function () { pm.expect(pm.response.responseTime).to.be.below(500); });
-
检查响应头:
pm.test("Content-Type is application/json", function () { pm.response.to.have.header("Content-Type", "application/json; charset=utf-8"); });
-
检查响应体内容:
pm.test("Response body has userId", function () { var jsonData = pm.response.json(); pm.expect(jsonData).to.have.property("userId"); });
-
检查响应体数组的长度:
pm.test("Response array length is 100", function () { var jsonData = pm.response.json(); pm.expect(jsonData.length).to.eql(100); });
-
使用环境变量:
// 设置环境变量 pm.environment.set("userId", pm.response.json().userId); // 获取环境变量 var userId = pm.environment.get("userId"); pm.test("User ID is set", function () { pm.expect(userId).to.not.be.null; });
-
链式请求:
// 在第一个请求中设置环境变量 pm.environment.set("postId", pm.response.json().id); // 在第二个请求中使用环境变量 pm.test("Post ID is correct", function () { var postId = pm.environment.get("postId"); pm.expect(pm.response.json().id).to.eql(postId); });
-
异步请求测试:
pm.test("Status code is 200", function () { pm.expect(pm.response.code).to.equal(200); }); pm.sendRequest("https://jsonplaceholder.typicode.com/posts/1", function (err, res) { pm.test("Post ID is 1", function () { pm.expect(res.json().id).to.eql(1); }); });
总结
编写测试脚本有助于自动化 API 验证,提高开发和测试效率。Postman 提供了丰富的 API 和工具,使编写和运行测试脚本变得简单直观。通过不断编写和优化测试脚本,可以确保 API 的可靠性和稳定性。