自动化工具 【py 接口自动化】HttpRunner 和自己通过单元框架封装一套做接口自动化,哪个更好些?

fer · 2021年10月13日 · 最后由 TestOps 云层 回复于 2021年10月20日 · 5810 次阅读

方式一:Httprunner
方式二:python+unittest+ddt

哪种做接口自动化更好些

共收到 16 条回复 时间 点赞

后者更普遍,前者的前景也很可观,用的人越来越多

fer #2 · 2021年10月13日 Author
迷龙 回复

大佬觉得他们的缺点分别是什么

是个很好的问题,最近也有类似的疑惑,个人感觉用 httprunner 也应该掌握源码,如果是仅仅当工具来用的话那不如用 metersphere 这类的开源平台;自己封装能加深对接口自动化的理解,也更灵活可控,毕竟自己的代码想咋改咋改。(ps:单元测试框架更喜欢 pytest)

fer #4 · 2021年10月13日 Author
墨妖 回复

所以大佬你还是选择 pytest 是吗

fer 回复

不是大佬,我这边简单小项目(就几十个接口,就算全部顺序执行也没啥,主要成本小,几天就完成)用 metersphere,项目接口情况比较复杂的使用 pytest 去封装、分层

有同样的疑惑

最终应该都会接触下 httprunner 的, 先自己写 到后面去看 httprunner 的时候还是会觉得 它不错, 要么自己先构思(Python Requests 单元测试框架),要么看了 httprunner 再构思, 看了 httprunner 应该都不会觉得亏, 个人见解

httprunner 优点跟缺点都很明确(一年前用过);
优点:
1、帮你编排测试用例
2、帮你断言结果
3、可持续添加接口
4、跟 debugtalk 无缝链接,定制化你想实现的功能
5、详细、漂亮的结果展示
缺点:
1、人家写的
2、入门需要成本
3、错误提示不够明确,找不到哪里的错
你要是公司第一个吃螃蟹的、python 不是很熟悉,最好还是自己写;反之当然用 httprunner 了

借楼请教大佬,是怎么系统地看 httprunner 的代码的,个人感觉无从下手,没有系统性的学习方法,抓不到头绪

直接用接口自动化平台不行吗?平台或工具能完成,就不想把时间花在写代码上

没有更好的说法,主要是看哪个适合自己的需求,这就有点像 unittest 和 pytest 哪个更好

我去催饭 回复

先按顺序看 httprunner 源码各文件内容,然后再用脚手架新建一个 项目 一步步 debug 下去, models.py 可以先看,个人理解

布吉岛 回复

平台这块有项目推荐么

个人认为 httprunner,特别是 2.5.7 版本,是一个非常好的源码阅读版本,尝试去解析它,只要你啃完了,对接口测试,各种参数化,python 高级语法都会有新的认知,特别里面还有涉及到一些 unix 的设计模式,很推荐

itest work 也不错,自动推导接口依赖关系,2 个 G 内存 ,一核就 OK ,安装也简单,一键完事,升级也是一键完事,发版本很快,重点是免费的

还有接口调用链






详见 https://testerhome.com/topics/30495 测试架构师如何解读测试平台的各种争议

用 Java+junit+OKHTTP 也很容易上手,关键有问题好维护

需要 登录 后方可回复, 如果你还没有账号请点击这里 注册