从某种程度来讲,自动化测试是未来的发展趋势,它可以很好地节省时间成本和人力成本,提高工作效率。那么Python自动化测试框架有哪些?相信很多人都不太了解,我们一起来看看吧。
一、Robot Framework
主要被用在测试驱动类型的开发与验收中。虽然由Python开发而来,但可以在基于.net的lronPython和基于Java的Jython上运行。作为一个Python框架,Robot可以兼容诸多平台,比如Windows、Mac、Linux等。
使用条件:在使用Robot Framework之前先安装Python 2.7.14及以上的版本,推荐使用Python 3.6.4以确保适当的注释能够被添加到代码段中并能够跟踪程序的更改,同时还需要安装Python包管理器–pip。下载相应的开发框架,如:在开发者圈子里比较流行的PyCharm社区版。另外由于其代码段本身并不依赖于任何IDE,因此完全可以沿用手头既有的IDE工具。
二、Pytest
适用于多种软件测试的Pytest是另一个Python类型的自动化测试框架。凭借着其开源和易学的特点该工具经常被QA团队、开发团队、个人团队、以及各种开源项目所使用。鉴于Pytest具有“断言重写”之类的实用功能许多大型互联网应用。
使用条件:除了基本的Python知识用户并不需要更多的技术储备,另外用户只需要有一台带有命令行界面的测试设备,并安装好了Python包管理器、以及可用于开发的IDE工具。 如果您正在考虑使用Pytest,请进一步参考《使用Pytest和Selenium WebDriver实现测试自动化》
三、UnitTest/PyUnit
UnitTest/PyUnit是一种标准化的针对单元测试的Python类自动化测试框架。基类TestCase提供了各种断言方法、以及所有清理和设置的例程。因此TestCase子类中的每一种方法都是以“test”作为名词前缀,以标识它们能够被作为测试用例所运行。用户可以使用load方法和TestSuite类来分组、并加载各种测试。也可以通过联合使用来构建自定义的测试运行器。正如我们使用Junit去测试Selenium那样,UnitTest也会用到UnitTest-sml-reporting、并能生成各种XML类型的报告。
使用条件:由于UnitTest默认使用了Python,因此我们并不需要什么先决条件,除了需要具备Python框架的基本知识,也可以额外地安装pip、以及用于开发的IDE工具。
四、Behave
行为驱动开发(behavior-driven development,BDD),是一种基于敏捷软件开发的方法。它能够鼓励开发人员、业务参与者和QA人员,三者之间的协作。作为另一种Python测试框架,Behave允许团队避开各种复杂的情况,去执行BDD测试。从本质上说,该框架与SpecFlow和Cucumber非常相似,常被用于执行自动化测试。用户可以通过简单易读的语言来编写测试用例,并能够在其执行期间粘贴到代码之中。而且,那些被设定的行为规范与步骤,也可以被重用到其他的测试方案中。
使用条件:任何具备Python基础知识的人都可以使用Behave,其他先决条件还包括:必须先安装Python 2.7.14及以上的版本,需要通过Python包管理器或pip来与Behave协作,大多数开发人员会选择Pycharm作为开发环境,当然也可以选用其他的IDE工具。 如果您正在考虑使用Behave,那么您可以借用《Behave with Selenium》中提到的自动化脚本。
五、Lettuce
Lettuce是另一种基于Cucumber和Python的行为驱动类自动化工具。Lettuce主要专注于那些具有行为驱动开发特征的普通任务。它不但简单易用,而且能够使得整个测试过程更流畅、甚至更有趣。
使用条件:需要安装带有IDE的Python 2.7.14、及以上的版本。当然,也可以使用Pycharm或任何其他IDE工具。同时,还需要安装Python包管理器。
这五种自动化测试的Python框架中Pytest、Robot Framework和UnitTest可主要用于功能与单元测试,而Lettuce和Behave仅适用于行为驱动测试。
到这里结束了,感谢观看,我是一名热爱分享的小博主,Python入门视频分享可以私信+关注,共享哦。
|