如何在Postman中设置测试和集合运行器?
我们可以借助脚本向从请求获得的响应中添加测试验证。这些脚本包含在“测试”选项卡中。只有在请求成功的情况下,测试才会执行。
在“测试”选项卡下开发的测试是用JavaScript编写的。发送请求后,将在“测试结果”选项卡中获得响应以及测试结果。通过的测试以绿色标记,失败的测试以红色标记。
在“测试”选项卡中添加以下JavaScript验证:
tests["Status Code should be 200"] = responseCode.code === 200 tests["Response time lesser than 10ms"] = responseTime<10
tests是一个数组类型的变量,其值可以具有整数、字符串、布尔值等数据类型。“状态码应为200”和“响应时间小于10ms”是测试名称。我们应该为测试起一个有意义的名称。responseCode.code是在响应中获得的代码,responseTime是获取响应所需的时间。
选择一个HTTP方法并输入一个URL,然后单击“发送”。
获得的响应代码为200 OK,响应时间为129ms(第二个测试验证响应时间是否小于10ms)。上述测试显示了带有测试结果(1/2)的响应,这意味着两个测试中只有一个通过了。第一个测试通过,第二个测试由于断言错误而失败。
让我们以一个包含多个请求的集合为例,并借助集合运行器来执行它们。
步骤1 - 点击Postman应用程序中的Runner菜单。
步骤2 - 集合运行器窗口打开。
步骤3 - 从“选择一个集合或文件夹”部分选择集合名称。
步骤4 - 如果需要在特定环境中执行集合中的请求,请选择一个环境。输入请求的迭代次数和请求的延迟时间。
步骤5 - 如果请求的数据来自文件,我们可以从“数据”字段中选择文件类型。最后,单击“运行Collection1”。
步骤6 - 集合运行器窗口的“运行结果”部分打开。环境、集合名称和已通过/失败的计数显示在顶部。对于每个请求,都会填充响应状态代码、所需时间、有效负载大小和测试验证。
我们将在下图中看到,测试 - 状态码为200已在两次迭代中的所有请求中执行。如果某个请求没有实现测试,则将显示消息 - 此请求没有任何测试。