调试收集运行
有时,即使您希望所有这些测试都通过,您的收集测试也会失败。
发生故障时,可以通过两种方式调试请求:
让我们在使用Postman Echo集合的示例中探讨调试请求。
要将Postman Echo添加到Postman构建器视图中,请转至Postman Echo。
单击屏幕右上方的“在邮递员中运行”按钮。Postman Echo集合显示在Postman构建器的侧边栏中。
在您的Postman构建器视图中,单击标题栏左侧的Runner按钮。
在“收集运行器”中,选择“邮递员回声”,然后单击“ 运行邮递员回声”按钮。(您也可以选择“环境”,“迭代”,“延迟”(时间),“日志记录”,“数据”和“持久变量”。
但是此示例不是必需的。)下图显示了收集运行的结果。
在Delete Cookies
请求中,我们希望服务器返回某个cookie。
Postman Echo的Cookies端点返回发送给它的任何cookie。它还在响应主体中发送这些的JSON表示形式。我们正在使用它来检查是否返回了某些cookie。
如您所见,该测试失败。让我们调查原因。
使用请求和响应主体进行调试
正如测试所言,我们希望将一个名为cookie的消息foo1
作为响应的一部分返回。
如果您在收集运行中单击任何请求名称,您会注意到出现一个工具提示。该工具提示包含有关您的请求的有用信息,您可能需要找出可能出了问题的信息。
展开该Response Body
部分,我们可以清楚地看到响应中不包含我们期望的cookie。
而且,当我们扩展该Response Headers
部分时,我们看到cookie根本没有发送。我们推断Postman Echo处理Cookie的方式一定有问题。
现在,我们可以继续并在我们的API中对此进行修补,然后重试。
请注意,仅尝试显示小于300KB的响应正文。出于安全原因,您的响应标头和正文永远不会同步。
您可以通过Log responses
在开始收集运行时使用下拉列表来控制在此工具提示中显示哪些实体。
使用Postman控制台进行调试
使用Postman控制台进行调试时,需要先打开控制台,然后再开始运行。
有关Postman控制台的更多信息,请参见调试和日志。
邮递员控制台记录所有请求并将它们显示在列表中。
让我们在这里找到引起问题的请求,并扩展其响应头。在这里,我们也看到Postman Echo端点没有返回cookie,并指出了测试失败的原因。然后,我们可以推断出端点行为异常,需要进行检查。
任何console.log
你在你的测试脚本有也出现在这里,所以你可以登录控制台,如果你正在调试一个复杂的测试脚本,也可以提前打开控制台。
==============================================================================================================
设置好 Collection Runner 中的各项配置参数后可以运行整个 Collection 中的所有请求。
在运行过程中,总是有这样或那样的问题导致断言失败。比如网络导致请求发送不成功、变量值错误、接口本身的 Bug 等。
遇到失败的情况,我们肯定需要分析到底是不是 Bug 了。在 Collection Runner 运行后的测试结果中,可以查看运行的详细记录,以分析断言失败的原因。
通过结果日志分析
在运行的结果中,我们可以通过左侧的绿色和红色方块筛选器,筛选失败的断言。然后点击请求名称(用例名称),查看详细信息,如下图:
比如上图中的Delete Cookies
是一个请求的标题,点击后可以看到请求和响应的详细记录。
- Request URL:请求发送的 URL,可以查看
Get / Delete
等类型的请求参数是否正确; - Request Headers:请求头部,可以查看请求中的
cookie / token
等认证信息或者UserAgent
等头部字段的数据是否正确; - Request Body:请求数据,针对
Post / Put
等类型的请求 Boby 中传递的数据是否正常,这是一个很重要的观察点; - Response Headers:响应头部,用于观察响应头部字段数据是否正确;
- Response Body:响应数据,这是最重要的观察点,断言如果失败,大概率是因为响应数据的问题。这有可能是断言设置没有考虑到可能变化的数据,也可能是返回的数据不符合要求(Bug)。
当然这里主要记录的是响应中的数据,如果是在 Tests 或 Pre-requests 中的代码异常,这里就无法查看到了。
如果想要顺带查看代码问题,需要使用 Postman Console
,也就是 Postman 的控制台,这里可以查看代码报错和使用 console.log()
函数打印的值。
使用 Postman Console 分析
要打开 Postman Console 可以通过左下角的按钮或者快捷方式Ctrl + Alt + C
:
注意,必须要先开启 Postman Console 再运行 Runner ,否则 Postman Console 捕获不到结果。
打开 Postman Console 后,通过 Runner 运行 Collection,在 Postman Console 界面就可以看到运行的所有请求信息:
Postman 会记录所有运行的用例,所以筛选起来不是很方便。
Postman Console 不止可以用来分析结果,还可以用来调试 Pre-requests 和 Tests 中的代码。