Postman是一款流行的API开发工具,它为API的测试、设计和管理提供了一个平台。
在Postman中,"Tests"是一种功能,允许用户在发送请求后对响应进行验证。
这通过编写JavaScript代码实现,该代码在Postman的沙盒环境中运行。
以下是Postman Tests的一些常见用法:
Tests最基本的功能是断言,例如验证响应的状态码、响应体或头信息。例如:
? ?pm.test("Status code is 200", function() {
? ? ? ?pm.response.to.have.status(200);
? ?});
Tests可以用来从响应中提取数据,如提取JSON响应中的特定值,并将其保存为环境变量或全局变量。例如:?
? ?var data = JSON.parse(responseBody);
? ?if (data.token) {
? ? ? ?tests["Body has token"] = true;
? ? ? ?postman.setEnvironmentVariable("token", data.token);
? ?} else {
? ? ? ?tests["Body has token"] = false;
? ?}
在Pre-request Script或Test Script中,可以使用`pm.sendRequest`方法来请求其他接口,并使用返回值。例如:
? ?pm.sendRequest("https://postman-echo.com/get", function (err, response) {
? ? ? ?console.log(response.json());
? ?});
Tests中可以访问和修改全局变量,这些变量可以在请求之间共享。例如,你可以在一个请求的Tests中设置一个全局变量,然后在另一个请求的Pre-request Script中使用它。
Postman的Runner功能允许用户对多个请求进行批量测试。在Runner中,可以为每个请求设置不同的测试环境,例如从CSV或JSON文件中读取数据,为请求参数提供不同的值。
可以编写Tests来检查API的响应时间是否符合预期。例如:
? ?tests["Response time is less than 10000ms"] = responseTime < 10000;
? ?console.log(responseTime);
Tests可以用来捕获和记录详细的错误信息,这有助于调试问题。
Tests可以与外部数据源结合使用,比如从数据库或外部API中读取测试数据。
https://learning.postman.com/docs/writing-scripts/test-scripts/
总的来说,Postman的Tests功能为API测试提供了一个强大的平台,允许用户以编程方式进行复杂的测试。