Postman 使用监视器运行测试
Postman 监视器提供了一种自动运行测试脚本并定期执行其他测试的方法。设置基于集合的监视器时,您可以选择一个包含要运行的请求和测试脚本的集合,并指定 Postman 运行该集合的频率。如果测试失败,您将收到通知,并且所有结果都记录在监视器的仪表板上。
以下是您可以使用基于集合的监视器来测试 API 并确保它们正常运行的一些方法。
有关正在运行的监视器的示例,请访问Postman API 监视示例公共工作区以查找一些常见监视用例的示例集合。您可以通过创建分支来协作处理工作区中的集合,或者通过将集合导出和导入到团队工作区来修改集合以供团队使用。
监控 API 端点
要监视特定端点,请创建一个集合,其中包含不同请求中同一端点的不同变体。这里的想法是测试每个变体的响应,以便完全覆盖端点。要了解有关测试请求的更多信息,请参阅编写测试。
监控整个 API
这在监视特定端点的方法上类似,但在将公共 API 主机存储在环境变量中存在细微差别,因此跨不同 API 端点的请求在其路径和其他请求参数中有所不同。这样的顺序也使得跨请求链接数据成为可能,这允许将整个 API 作为一个整体进行测试。
运行 API 测试
在各种端点相互关联的 API 中,准确了解它们的功能至关重要。在数据从一个请求传递到另一个请求的情况下,可以将整个响应或响应的一部分保存为环境变量。设置非原子值(如对象和数组)时要格外注意,因为原始值将会丢失。相反,这种复杂的对象和数组可以按如下方式处理:
// set the value
postman.setEnvironmentVariable('complexObj', JSON.stringify(myComplexObjOrArray, null, 2));
// Fetch the value
var foo;
try {
foo = JSON.parse(postman.getEnvironmentVariable('complexObj'));
}
catch (e) {
console.error(e);
foo = { __parseError: true };
}
if (foo.__parseError) {
// handle parse errors here
}
使用适当的字符串化嵌套值,它可以传递给后续请求,例如,作为请求主体。
监控 HTTP 响应代码
responseCode.code可以通过检查测试脚本内部的值来完成响应代码测试。
tests['Request resulted in 200 OK'] = responseCode.code === 200;
监控延迟
作为请求超时的替代方法,可以通过比较测试脚本中的变量值来监控网站响应延迟responseTime。
tests['Response latency is acceptable'] = responseTime < 1000;
// responseTime is in milliseconds