三大常用自动化框架对比
创作时间:
作者:
@小白创作中心
三大常用自动化框架对比
引用
1
来源
1.
https://www.cnblogs.com/zgq123456/articles/18401659
本文对比了RobotFramework、pytest和unittest三个自动化测试框架的优劣势。RobotFramework通过关键字驱动测试简化自动化过程,但创建自定义HTML报告繁琐。Pytest适用于多种测试,具有紧凑的测试套件和模块化夹具,但用例无法与其他框架共用。Unittest是Python自带框架,简单易用,但报告不美观且数据驱动繁琐。
上次发布过性能测试工具的对比后,有小伙伴后台留言,想了解一下自动化测试框架的对比,尤其是RobotFramework、pytest和unitest之间的优劣势情况。这不松勤软件测试今天就来分析一下他们之间的区别和各自的优缺点。
1. RobotFramework
优点:
- 通过使用关键字驱动测试(keyword-driven-test)的方法,它能够帮助测试人员轻松地创建具有可读性的测试用例,进而简化了整个自动化的过程。
- 用户能够轻松地测试数据中的语法。
- 因为是由各种通用工具和测试库所组成,所以它不但拥有庞大的生态系统,而且可以在单独的项目中使用其各个元素。
- 由于拥有许多类型的API,因此该框架具有高度的可扩展性。
- 虽然并非内置功能,但是Robot可以通过Selenium Grid来帮助用户运行各种并行测试
缺点:
虽然有着上述各种便利,但是Robot Framework在创建自定义的HTML报告方面比较繁琐,并且数据驱动使用起来比较繁琐
2. Pytest
适用于多种软件测试的Pytest,是另一个Python类型的自动化测试框架。凭借着其开源和易学的特点,该工具经常被QA(质量分析)团队、开发团队、个人团队、以及各种开源项目所使用。鉴于Pytest具有“断言重写(assert rewriting)”之类的实用功能,许多大型互联网应用,如Dropbox和Mozilla,都已经从下面将要提到的unittest(Pyunit)切换到了Pytest之上。
优点:
- Pytest可以让用户写出更为紧凑的测试套件。
- 其他的测试工具会要求开发或测试人员使用调试器,或以日志检查的方式检测某个特定值的来源。而用户在用Pytest来编写测试用例时,完全可以将所有的值都存储在测试用例之中,断言的各个值都可以展示出来,用户能够容易地编写和理解各种测试。
- 测试夹具(Fixture)函数常被用来向测试函数添加某个参数,并返回不同的值。在Pytest中,您可以通过使用一个夹具来模块化另外一个。同时,用户可以使用多个夹具,在无需重写测试用例的情况下,将测试覆盖到所有参数的组合。
- Pytest开发人员通过发布各种实用插件,来保持框架的可扩展性。例如:pytest-xdist可以在不使用其他测试器的情况下,被用于执行并行测试。同时,单元测试也可以在无需复制任何代码的情况下,实现参数化。
- 通过为开发人员提供各种特殊的例程,它能够使得测试用例的编写更为简单、更不易出错,同时代码也会变得更短、更易被理解。
- pytest自带的报告不够美观,可以使用allure进行定制化报告,弥补pytest缺陷
缺点:
虽然方便了用户编写测试用例,但是这些用例却无法与任何其他的测试框架一起被使用。
3. UnitTest
一种标准化的针对单元测试的Python类自动化测试框架,基类TestCase提供了各种断言方法、用户可以使用load方法和TestSuite类来分组、并加载各种测试。
优点:
- python自带的,不需要安装任何其他的模块。
- UnitTest是xUnit的衍生产品,其工作原理与其他xUnit框架十分类似。因此对于那些没有过硬Python背景的人来说,也能很快地上手。
- 用户能够以更为简单的方式运行单个测试用例。您只需在终端上预定好名称,该框架便可灵活地执行各种用例的测试,并产生精炼的输出。
- 它能够在几毫秒内生成各种测试报告
缺点:
- 测试报告不美观,并且需要其他的模块进行生成测试报告
- 数据驱动需要安装ddt库比较繁琐
- 没有强大的筛选用例功能
看到这些优劣势的分析,是不是已经确定自己喜欢的框架啦!
热门推荐
老年人补钾最快的方法
走进草原古城 追溯文化交融
深度剖析FPS游戏外挂现象及其对玩家体验的不良影响
一小区物业消防控制室值班人员擅离职守,被消防部门处罚
小明剑魔热梗盘点:我爸得了MVP,怎么不找自己的问题
1964年属相的简单介绍
怎样在短时间内补充睡眠
这个病毒号称是“病毒界的扛把子”,它是?儿童易患,家长千万要注意……
如何将Chrome设为Windows的默认浏览器
糖尿病患者食用荞麦面的营养价值与饮食建议
湖南春季赏花地图:油菜花、樱花、桃花、杜鹃花、郁金香等你来打卡
了解银行账户风险监控:全面解答您可能面临的问题和如何保护自己的财产安全
如何分析股票市场的供需关系
韧带断裂手术后怎么康复训练?一文了解
CSGO Spirit战队成员国籍信息一览
大蒜会坏吗 发霉的大蒜不能食用
小学生考试焦虑课件
高速公路建设对区域经济的影响
2025年临沂大学研究生分数线一览表(含2024年历年)
尿酸高,尿隐血怎么回事,怎么办
适合池塘湖泊的水生花卉组合
更换火花塞需要注意什么?一不小心发动机就报废了
警惕引擎故障!火花塞损坏的四大警示信号
什么是电池电压调节?详解电动汽车电池管理系统的关键技术
瑜伽垫有异味怎么办
黄精的栽培时间
量子力学不确定性:平行宇宙真的潜藏其中吗?
夜骑带火了这些"生意",背后的安全隐患不容小觑!
理清“功率流”和“信息流”
一小时15块的暑假工,多少大学生抢着做