使用监视器运行测试

Postman Monitors 提供了一种自动运行测试脚本和定期执行其他测试的方法。当您设置基于集合的监视器时,您可以选择包含要运行的请求和测试脚本的集合,并指定 Postman 运行该集合的频率。如果测试失败,您将收到通知,并且所有结果都记录在监视器的仪表板上

以下是您可以使用基于集合的监视器来测试您的 API 并确保它们正常运行的一些方法。

想看看 Postman Monitors 的实际应用吗?访问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