postman(一)批量执行接口测试用例

本文介绍如何使用Postman批量执行接口测试用例,包括创建测试用例集、设置变量、添加响应处理等步骤,有效提高测试效率。

postman是一个谷歌出的轻量级的专门测试接口的小工具~(PS:postman包括两种:Chrome浏览器插件和postman客户端,我使用的是postman客户端)虽然不如firefox的poster插件“轻量”,但是比firefox的poster插件、fiddler的接口测试功能更全面,比Jmeter更轻量、便捷~


我觉得我比较喜欢postman的两个功能点,一个是它的批量执行、一个是它的查看源码功能。会用两篇文章与大家分享一下~


今天分享的是postman如何批量执行接口测试用例~其实很简单,但是会给我们的工作带来很多方便~比如我们写了几十个测试用例,请求都是同一个服务器IP,一旦服务器IP地址从测试环境搬到线上环境,需要修改所有的服务器IP,如果不能将测试用例保存起来,统一修改服务器IP ,并且批量执行,那将是一件很麻烦的事情!可是postman帮助我们完美地解决了这个问题~具体操作请见下文~

一.创建测试用例集、子集

如下图,点击postman左侧Collections下面有个添加文件夹图标,就可以创建测试用例集啦~一个系统、模块或其他分类粒度的测试用例可以存放在该目录下。


另外,该目录下还可以创建子目录,进行测试用例的细分,如下图:


二.创建测试用例

创建接口测试用例,即新建http请求,选择请求方式、写好url、请求头、请求体

三.设置变量

postman的变量和Jmeter的参数化相似,即把若干处出现多次的数值用一个变量表示,达到一次修改、多处生效的效果,便于修改和管理。

点击postman上方一个按钮,点击Globals后面的Edit按钮,添加全局变量


点击右下角Add按钮,添加Environment Name,Key值写变量名称,Value值写变量对应的数值,点击Save按钮进行保存


把Value值出现过的地方用{{key}}代替,比如以上面的截图为例,出现http://172...57:8080的位置使用“{{baseURL}}”代替

四.添加响应处理

响应处理有点类似Jmeter里的检查点,即通过检查响应数据是否符合预期来判断test是否通过。在Tests中添加检查条件,postman提供了一些常用的检查条件的代码,直接添加或稍加修改即可。如:响应数据的状态码为200,则判断测试通过,则在代码片中选择“status code:code is 200”


五.批量执行测试用例

点击测试用例集中的“run”,批量运行测试用例,弹出collection runner,点击“Start Run”,批量运行测试用例



运行后,弹出测试结果,显示测试通过和失败的个数、请求URL、请求头、请求体信息,响应头、响应体信息,状态码等,我们就可以查看测试用例的执行结果及具体信息啦~


Postman批量执行测试用可借助 Collection Runner 实现。首先,需将测试用添加到集合里。集合是请求的容器,可把相关的测试用组织在起。在 Postman 界面左侧,点击“Collections”,创建或选择个集合,将需要批量执行的测试用添加到该集合中。 添加好测试用后,为每个测试用设置测试脚本。在测试脚本中,可以使用 `pm.test` 方法来定义测试逻辑。如: ```javascript pm.test("Status code is 200", function () { pm.response.to.have.status(200); }); ``` 若测试用需要不同的输入数据,可准备个数据文件,如 CSV 或 JSON 文件。以 CSV 文件为,文件内容可能如下: ``` keyword,expectant_total test1,10 test2,20 ``` 在准备好数据文件后,点击集合名称旁边的三个点,选择“Run”,打开 Collection Runner 界面。在该界面中,选择要运行的集合,点击“Select File”按钮,选择之前准备好的数据文件。 还可以在 Collection Runner 界面设置其他运行选项,如迭代次数、延迟时间等。设置完成后,点击“Run”按钮,Postman 就会按照设置批量执行集合中的测试用,并显示测试结果。若测试不通过,会打印具体的结果,包括请求的内容、预期结果、实际结果等[^1]。 ```javascript // 获取文件中的数据 var total = (data.expectant_total); var keyword = data.keyword; // 设置成环境变量 pm.environment.set("total", total); pm.environment.set("keyword", data.keyword); if (pm.test("状态码为 200", function () { return pm.response.code === 200; })) { var body = JSON.parse(pm.response.text()); if (body.total == total) { pm.test("测试通过!", function () { return true; }); } else { pm.test("测试不通过!" + "(输入搜索关键字=" + keyword + "),预期结果(查询结果个数 total=" + total + "), 实际结果(查询结果个数 total=" + body.total + ")。", function () { return false; }); } } ```
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值