大家好,在我们日常的接口测试工作中,经常需要对接口返回的数据进行断言,以确保接口的正确性。当接口数量较多时,逐个编写断言语句会变得非常繁琐。此外,在接口测试过程中,我们还可能需要频繁地查找和替换某些数据。为了解决这些问题,Postman 提供了一些非常实用的快捷功能,其中包括批量断言和快速查询替换。本文将详细介绍如何使用 Postman 的批量断言和快速查询替换功能,帮助你提高接口测试的效率。
一、批量断言
前面提到过断言,它是针对每个接口编写的一个或多个验证点。在编写断言的过程中,可能会遇到这样一种情况:多个接口中有部分接口返回的参数名相同,返回的结果也相同。对于这些返回相同的参数值,可以使用一个共同的断言。通过编写一个断言,可以完成对不同接口中相同返回参数的批量断言。例如,每个接口都可能有 Code,或者 HTTP 的响应状态码,这些都可以使用这个通用断言。
编写通用断言的位置在集合或集合的文件夹中。具体位置如下图所示:
示例:
对项目中每个接口返回的响应状态码进行断言。
具体步骤如下:
(1)选择其中一个集合,进行编辑,选择 Scripts 标签,选择 Post-response ,在文本域内输入断言响应状态码的代码块。
(2)批量运行该集合,就会查看到每个用例中都会用到该断言响应状态码
由此可以看出,通过这个功能可以帮大家完成最少的代码、更多的测试。但是,它的使用也有一个前提条件,就是当返回的参数名、参数值都是一样的时候,才能使用这个批量断言功能。
二、快速查询与替换
有时我们会遇到这样的问题:系统中的用例众多,环境变量和系统变量的值也很多,查找特定的值非常不便;或者想要修改某些值,但由于修改点太多,修改起来十分费劲。那么,对于这样的困扰,有没有解决办法呢?答案是肯定的,那就是快速查询与批量替换。
接下来,来了解这个功能的入口和简单介绍。
以下是功能介绍:
- FIND:搜索输入框,在搜索框中输入你想要搜索的值,Postman 自动会在已打开的请求、集合、环境变量以及全局变量中去搜索,如果搜索到,就会在右侧展示出搜素的结果。其下方有两个复选框,分别是 Regex(正则匹配)和 Ignore Case(忽略大小写)。
- WHERE:带条件查询,默认会选择 everything(查询所有),如果想要选择某一个 tab 搜索,从下面选择即可,可以支持从集合、环境变量、全局变量以及以打开的请求中搜索。
- REPLACE WITH:替换文本框,在此文本框中输入替换的值,点击 Replace in ... 按钮,会将搜索出的值全部替换。
- 右侧的搜索结果:搜索出对应的结果后,右侧每个 tab 中都会显示具体的数字,代表当前 tab 中匹配值的数量。选择一个值点击 Open,就会直接进入到对应的功能选项卡中。
示例一:
按照正则表达式搜索 11 位数字。
(1)在搜索框中输入\d{11}
(2)勾选 Regex
(3)点击 Find 按钮
(4)右侧就会展示出含有 11 位数字的所有信息
示例二:
从集合中搜索。
(1)在搜索框中输入搜索关键字
(2)在 WHERE 中选择 Choose entities to find in,选中 Collections
(3)找到你想要的结果,点击 Open in builder。就可以直接打开对应请求 tab
示例三:
替换某个字符串。
(1)在查找搜索框中输入关键字
(2)在 REPLACE WITH 框中输入想要替换的值,选择 Select All,点击后面的按钮
(3)再次搜索替换后的结果,此时,所有值都已被替换
通过这个功能,可以快速帮大家找到想要的集合、环境变量、集合变量、请求或者代码块。