多测师是一家拥有先进的教学理念,强大的师资团队,业内好评甚多的接口自动化测试培训机构!

17727591462

联系电话

您现在所在位置:接口自动化测试培训 > 新闻资讯

自动化测试框架Pytest和RobotFramework怎么选择?

更新时间:2021-09-09 08:25:07 作者:admin 浏览:874

自动化测试框架Pytest和RobotFramework怎么选择?

  Pytest 与 Robot Framework 对比

  Pytest 框架特性

  Pytest 是一款强大的 Python 测试工具,它具有易于上手,功能强大,第三方插件丰富,效率高,可扩展性好,兼容性强等特点,实际上,越来越多的项目开始放弃 Unittest 和 Nose 以及 Robot Framework ,转而使用 Pytest,比如 Mozilla 和 Dropbox. 因为 Pytest 可以提供更丰富功能,包括 assert 重写,第三方插件,以及其他测试工具无法比拟的 fixture 模型。

  Pytest 可以自动找到测试用例执行,并汇报测试结果。它有丰富的基础库,可以大幅度提高用户编写测试用例的效率。它具备非常强的可扩展性,用户可以自己编写插件,或者安装第三方插件。Pytest 可以很方便地与其他工具一起使用,比如持续集成、web 自动化测试等。

  Pytest 也具有 Robot Framework 所闻名的验收测试能力。Pytest 最好的特性之一是,它提供了测试用例的详细失败信息,使开发者可以快速准确地改正问题。它兼容最新版本的 Python,还兼容 unittest、doctest 和 nose,开箱即用。Pytest 还有各种可用插件来给现有测试技术和测试用例增加更多功能和多样性。事实上,在其活跃社区中有 300 多个可用的插件。该平台设计用于编写更简单,错误率更小的代码。你可以将 Pytest 与诸如 Selenium 和 Splinter 之类的图形用户界面一起使用,来使测试工作更轻松。

  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 都可以使用最新版本

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

自动化测试框架Pytest和RobotFramework怎么选择?

  Robot Framework 框架(简称 rf)

  优点

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

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

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

  支持数据库操作。

  缺点

  测试用例写起来不简洁。

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

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

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

  导入测试库有时会异常

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

  问题调试困难

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

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

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

  以上是关于自动化测试框架Pytest和RobotFramework怎么选择的介绍,由多测师亲自撰写。  http://www.aichudan.com/

联系电话

17727591462

返回顶部