pytest与Robot Framework框架区别

2024-01-08  本文已影响0人  笑起来真好看ccn

Pytest 优于其他测试框架的地方:,简单测试可以很简单的编写,复杂测试也可以很简单编写,简单灵活,容易上手支持参数化

能够支持简单的单元测试和复杂的功能测试,还可以用来做 selenium/appnium 等自动化测试、接口自动化测试(Pytest+requests)

Pytest 具有很多第三方插件,并且可以自定义扩展,比较好用的如 Pytest-selenium(集成 selenium)、Pytest-allure-adaptor(生成漂亮的 allure 报告)、Pytest-rerunfailures(失败 case 重复执行)、Pytest-xdist(多 CPU 分发分布式执行)等

测试用例的 skip 和 xfail 处理

可以很好的和 jenkins 集成

测试代码可读性强

易于上手

断言失败仅使用原生关键字 assert,而不是 self.assertEqual(),或者 self.assertLessThan()

Pytest 可以运行 unittest 和 nose 编写的测试用例

不依赖特定的 Python 版本,Python2 和 Python3 都可以使用最新版本

正在快速壮大的社区开发和维护

Robot Framework 框架(简称 rf)

优点

1 可以让不懂编程的测试人员参与到自动化测试中来

2 具有丰富的第三方关键字, 同时也可根据自身业务去开发关键字库, 便于在团队内推广

关键字驱动,自定义用户关键字。

支持测试日志和报告生成。

支持系统关键字开发,可扩展性好。

支持数据库操作。

缺点

测试用例写起来不简洁。

需要掌握特定语法,学习成本高

只支持 Python2,不支持 Python3,容易导致测试团队 Python 版本不统一

界面反应速度慢,经常卡死

导入测试库有时会异常

对于测试团队限制过多,不利于结合具体业务定制功能

问题调试困难

输出的日志结构复杂,多为英文,不容易看懂

维护困难,超过 2000 条用例就是噩梦

接口测试,rf 一般是顺序执行的,但在接口测试中需要并发测试,这种测试需要加入写入的并发关键字

上一篇下一篇

猜你喜欢

热点阅读