Postman接口测试 ------- 运行接口用例集collection

Postman接口测试 ------- 运行接口用例集collection

 在postman中,我们在一个collection中,可以根据模块、流程,来创建我们的测试用例集;如果想要整体的把所有流程全部跑一遍,就需要直接运行整个测试用例集合。

一、如何批量运行用例集

1.1选中一个测试集合进入运行界面

点击测试集合collection的三角符号,点击run,此时postman会打开一个新的界面,单独运行这个测试用例集。

1.2 测试集合运行页面配置项

在这里有一些复杂的配置项,需要更改默认值,会用到的就是:interactions(运行次数),看你需要运行多少次。

然后就是右边是用例的执行顺序,可以拖动改变。

Postman接口测试 ------- 运行接口用例集collection

1.3生成测试结果

这里的测试结果,是根据我们每个用例里的断言判断的,如果没有断言,并且能正常运行,也是成功状态。

Postman接口测试 ------- 运行接口用例集collection

二、能使用postman进行性能测试吗

  这个文章我本来是想命名为“使用postman进行性能测试”的,但是我在测试运行用例时,发现根本不是这么回事儿,postman运行接口不能作为性能测试。

  • 原因:postman中的运行次数不管是多少次,都是按照顺序执行的,没有性能测试中的并发和并行,所以每秒运行的接口次数要看单个接口的响应速度,且某一时刻运行的接口也仅有一个。

下面谈谈我研究postman能否作为性能测试的过程。

  我是按照性能测试的想法,想看看用postman到底能跑到多少的并发。所以我1000次的运行次数,运行同一个接口。

  变量有:电脑配置、postman的运行CPU占用率、总共运行时间;然后算出来每秒运行次数和平均响应时间。

测试一:

次数:1000次

时间:4分16秒

平均并发数:4次/秒

平均响应时间:200ms左右

cpu占用:25%

测试二:

次数:1000次

时间:3分40秒

平均并发数:4.5次/秒

平均响应时间:200ms左右

cpu占用:10%

测试三:

次数:1000次

占用30%

时间:3分25秒

测试四:

次数:1000次

加入了时间判断断言

占用30%

时间:3分50秒

相应时间小于200ms:98.6%

  结果我发现了,不管电脑本身配置高低、postman的每次“并发”测试结果:都是4次-5次每秒。这让我明白了,限制接口运行速度的只有单个接口单次的响应时间。

当然我还有一个小发现,那就是postman本身的运行效率。在postman设置每个接口运行间隔为0的情况下。我在Tests中加入了这些代码,并且在环境中也加入了time字段,默认值为0.

  1. pm.test("Response time is less than 200ms", function () {

  2. pm.expect(pm.response.responseTime).to.be.below(200);

  3. });

  4. var time_now = pm.response.responseTime;

  5. var time_base = pm.environment.get("time");

  6. var time_all = parseInt(time_now) + parseInt(time_base);

  7. pm.environment.set("time", time_all);

因为postman没有所有接口时间的统计(或者说我没找到),为了统计所有接口运行花费的总时间,我将每次接口响应时间加起来,最终运行完成后总时间就记录到了环境变量中(运行配置里要勾选:keep variable values).

最终结果是:

  postman运行1000次接口,通过外部计时器计时,总共为4分钟,而通过本身响应时间统计,总共运行时间为3分钟.

  对比接口本身的响应时间,两者差了一分钟,那我就理解postman本身也需要时间切换接口的发送,而且断言判断也需要时间,所以从时间角度看:这次postman的运行效率就是75%。


下面是配套资料,对于做【软件测试】的朋友来说应该是最全面最完整的备战仓库,这个仓库也陪伴我走过了最艰难的路程,希望也能帮助到你!Postman接口测试 ------- 运行接口用例集collection

最后: 可以在公众号:程序员小濠 ! 免费领取一份216页软件测试工程师面试宝典文档资料。以及相对应的视频学习教程免费分享!,其中包括了有基础知识、Linux必备、Shell、互联网程序原理、Mysql数据库、抓包工具专题、接口测试工具、测试进阶-Python编程、Web自动化测试、APP自动化测试、接口自动化测试、测试高级持续集成、测试架构开发测试框架、性能测试、安全测试等。

如果我的博客对你有帮助、如果你喜欢我的博客内容,请 “点赞” “评论” “收藏” 一键三连哦!喜欢软件测试的小伙伴们,可以加入我们的测试技术交流扣扣群:779450660里面有各种软件测试资源和技术讨论)

上一篇:pycharm使用debug模式,报错:pydev debugger: process 13108 is connecting


下一篇:微信小程序 启动页自动跳转