我尝试使用邮递员测试 API 的各种场景。但我有一个问题,如果我有身份验证 API,我该如何重用令牌?

Using the postman I try to test, various scenarios for my APIs. But I have a question, if I have an authentication API, how can I reuse a token?

但我有一个问题,如果我有身份验证 API(我不使用任何授权方法),它每次都会为我生成不同的令牌作为响应(在 POST 请求),要在其他 API 中使用,我如何在环境中添加该令牌以自动获取并且仅在其他 API 中调用?

例如,更具体一点: POST请求

{
"username": "test",
"password": "password"
}

回复:

{
"status": 0,
"message": "success"
"token":"zxvnm5yrhd6dfdfd6fd8g56f6teui5AXgGk851"
}

该令牌需要添加到其他 API 才能进行测试,但我希望它自动添加,或者只是调用它,所以我不必总是复制-粘贴。

另一个好奇心,你能给我一些关于教程的建议,关于如何在 postman 中自动化测试,以及 alerts/tests 通过电子邮件获取结果的方法吗?

注册成功后,您可以将您的令牌变量设置为环境变量。 例如,将您的变量设置为 {{autToken}} 使用 pm.environment.set("autToken", userData.accessToken); 设置您的值 之后,每隔 API 在邮递员测试中使用该令牌,将授权参数设置为不记名令牌(如果您的令牌是不记名令牌)并将该环境变量作为参数。

您可以为您的 collection 创建一个变量,它将保存令牌,我们称之为 access.tokenHow 去做。

您可以在请求获取访问令牌后添加一个测试,这实际上不会测试任何东西,但会设置变量值。

pm.test("Set access token", function() {
    console.log("Attempting to set access token variable");
    pm.response.to.have.status(200);
    let token = pm.response.json()["token"];
    if (token === undefined || token === "") {
        console.log("Missing access token");
        return;
    }
    pm.collectionVariables.set("access.token", token);
});

本例实际测试响应状态码为200,但您可以根据需要remove/change。第一步不是很需要,在测试中设置变量,如果缺少则创建。

然后您可以像这样在其他请求中使用该变量:

{{access.token}}

同时检查 postman guide