📅  最后修改于: 2021-01-08 01:40:32             🧑  作者: Mango
服务器收到响应后,将执行测试脚本。在邮递员中,我们可以编写测试脚本来测试Javascript中的API请求。测试脚本用于测试您的API是否正在相应地工作,确定服务之间的集成是否正常运行以及检查新的开发是否不影响现有请求的任何功能。测试脚本也称为请求后脚本。
我们可以使用测试代码来调试您的API项目的过程。例如,您可以使用测试脚本通过提交不完整的数据请求来验证API的错误处理。
我们可以对单个请求,文件夹或集合运行测试脚本。让我们看一个简单的示例,将测试脚本添加到请求中:
从控制台清除旧日志。
console.log ("This is a tests script")
在这里,您可以看到请求执行后测试脚本正在运行。
在这里,我们将使用环境变量。
pm.environment.set("u", "Hello");
这将在“开发”环境中创建一个名称为“ u”且值为“ Hello”的变量。
在这里,我们可以看到创建的“ u”变量在环境中可用。
我们可以手动输入脚本,也可以使用代码片段的右侧的代码段。
我们还可以在Postman中编写自定义测试脚本。邮递员提供了一个“ pm ” API(称为pm。* API),用于编写测试。
此函数将测试条件写入邮递员测试沙箱中。使用此功能编写测试可以帮助您正确命名测试,并确保脚本的其余部分在发生任何错误时不会中断。
此函数有两个参数,第一个是测试名称(作为字符串),第二个是返回布尔值的函数。
让我们来看一个例子:
// example using pm.response.to.have
pm.test("response is ok", function () {
pm.response.to.have.status(200);
});
单击发送按钮以测试您的请求,然后在响应部分中选择测试结果。这将显示通过了多少测试,总共运行了多少。
在上面的示例中,如果请求返回了200状态代码,则测试将通过;否则,测试将失败。否则,它将失败。尝试更改测试的状态码,然后再次运行相同的请求。
pm.test("Status Fail", function () {
pm.response.to.have.status(404);
});
您将收到以下响应:
pm.except()函数用于以其他格式print测试结果消息。此函数使测试易于阅读,甚至我们也可以通过变量或响应来管理数据断言。
// example using pm.expect()
pm.test("Status", function () {
pm.expect(pm.response.code).to.equal(404);
});
单击发送按钮,然后从响应部分查看测试结果:
通过此函数,我们可以测试请求环境,如下所示:
pm.test("environment to be production", function () {
pm.expect(pm.environment.get("env")).to.equal("production");
});
另一个示例是:
// example using response assertions
pm.test("Status Ok", function () {
pm.response.to.not.be.error;
pm.response.to.have.jsonBody("");
pm.response.to.not.have.jsonBody("error");
});
这是一个对象,为基于常用响应的测试提供了捷径。
// example using pm.response.to.be*
pm.test("Response", function () {
// assert that the status code is 200
pm.response.to.be.ok;
pm.response.to.be.withBody;
pm.response.to.be.json;
});
测试笔试是否通过;我们使用测试结果。对测试运行请求后,请从响应窗口中选择“测试结果”选项卡。在这里,您将获得测试结果列表,无论测试通过还是失败。布尔值为true的测试表示通过测试,而false表示测试失败。