五种Python⾃动化测试框架汇总,附学习⽅法
⽂章⽬录
前⾔
这么多年遇到的⼤概⼯作⼀年的测试基本上处于什么情况,在前⾔带⼤家回顾下。
编程语⾔基本上⼀点都不会;
Linux仅仅了解;
hbase默认端口号功能测试:只有功能测试经验;
测试⽤例:能写,但写的好不好就另说了;
运维技术:知道⽽已;
python爬虫所学总结学历:⼤专⽔平。
如果你也处于上述我说的⽔平,请⼤家仔细阅读下⽂内容。
⼀、如何⼊门⾃动化
⾸先,好多⼈说⾃动化没有那么神奇,不要被神话,我想说⼀个概念,功能测试的天花板就是15k,⾃动化⼊⾏是15k的薪资。你可以说⾃动化技术被神话了,如果不想被天花板限制,⼤家还是要学习⾃动化。
⾃动化测试是为了节约时间成本和⼈⼒成本进⾏的,本来就是和⼿⼯测试相辅相成的。
⾃动化主要的知识点就三项:
(1)⾃动化测试框架
(2)⾃动化测试脚本集
(3)丰富的⾃动化测试⼯具
本⽂我们主要是汇总了现在⽐较流⾏常⽤的⾃动化测试框架。表单大师自动填写
常⽤的Python⾃动化测试框架有Robot Framework、Pytest、UnitTest/PyUnit、Behave、Lettuce。软件测试的⾃动化在预设条件下运⾏系统或应⽤程序,评估运⾏结果,预先条件应包括正常条件和异常条件。⾃动化测试以⼈为驱动的测试⾏为转化为机器执⾏的⼀种过程。
下⾯⼀个⼀个说
⼆、Robot Framework
说⽩⼀点就是可以⽀持跨平台、多种应⽤测试。可以兼容:windos、MacOS、Linux等平台。
推荐使⽤Python3.6.4确保适当的注释能够被添加到diamagnetic中,并且可以跟踪更改。需要安装Python包管理器—pip。
学习的内容:
关键字、资源Resource、库Robot⽀持很多库,分为内置外置的。Python、Java携程的⽂件都可以;⽤例(多个关键字组合,顺序或者分⽀控制等组成的⽂件为Case);
三、Pytest
官⽅⽂档介绍:
Pytest is a framework that makes building simple and scalable tests easy. Tests are expressive and readable—no boilerplate code required. Get started in minutes with a small unit test or complex functional test for your application or library.
适⽤于多种软件测试的Pytest是另⼀个python类型的⾃动化测试框架。凭借着其开源和易学的特点该⼯具经常被QA团队、开发团队、个⼈团队、以及各种开源项⽬所使⽤。鉴于Pytest具有“断⾔重写”之类的实⽤功能许多⼤型互联⽹应⽤。
python基础知识测试使⽤先决条件:除了基本的Python知识⽤户并不需要更多的技术储备。另外⽤户只需要有⼀台带有命令⾏界⾯的测试设备,并安装好了Python包管理器、以及可⽤于开发的IDE⼯具。
建议⼤家版的官⽅⽂档作为参考。除了安装和配置 之外,要学习的就是断⾔。在鞋代码的时候,我们会做⼀些假设,断⾔就是⽤于在代码中捕捉这些假设。
四、UnitTest/PyUnit
Pytest和UnitTest是经常被⼈拿出来做⽐较的。
pytest是python的第三⽅测试框架,是基于unittest的扩展框架,⽐unittest更简洁,更⾼效。使⽤pytest编写⽤例,必须遵守以下规则:java电子书阅读软件
最新php黄x站app源码1.测试⽂件名必须以“test_”开头(如:test_ab.py)
2.测试⽅法必须以“test_”开头这⾥很明显,编写测试⽤例的⽅法pytest就⽐unittest简单很多。
UnitTest/PyUnit是⼀种标准化的针对单元测试的Python类⾃动化测试框架。基类TestCase提供了各种断⾔⽅法、以及所有清理和设置的例程。因此TestCase⼦类中的每⼀种⽅法都是以“test”作为名词前缀,以标识它们能够被作为测试⽤例所运⾏。⽤户可以使⽤load⽅法和TestSuite类来分组、并加载各种测试。也可以通过联合使⽤来构建⾃定义的测试运⾏器。正如我们使⽤Junit去测试Selenium那
样,UnitTest也会⽤到UnitTest-sml-reporting、并能⽣成各种XML类型的报告。
使⽤先决条件:由于UnitTest默认使⽤了Python,因此我们并不需要什么先决条件。除了需要具备Python框架的基本知识,也可以额外地安装pip、以及⽤于开发的IDE⼯具。
UnitTest编写Python单元测试代码,包括下⾯⼏个步骤,也就是我们应该学习的步骤。
写⼀个Python类,继承unittest模块中的testcase类,在编写测试类中定义测试⽅法(测试⽤例),在测试⽅法中调⽤被测试代码,校验测试结果。TsetCase类中提供了很懂校验的⽅法,最常见的就是assertEqual;
五、Behave
⾏为驱动开发(behavior-driven development,BDD),是⼀种基于敏捷软件开发的⽅法。它能够⿎励开发⼈员、业务参与者和QA⼈员,三者之间的协作。**作为另⼀种Python测试框架,Behave允许团队
避开各种复杂的情况,去执⾏BDD测试。从本质上说,该框架与SpecFlow和Cucumber⾮常相似,常被⽤于执⾏⾃动化测试。**⽤户可以通过简单易读的语⾔来编写测试⽤例,并能够在其执⾏期间粘贴到代码之中。⽽且,那些被设定的⾏为规范与步骤,也可以被重⽤到其他的测试⽅案中。
使⽤先决条件:**任何具备Python基础知识的⼈都可以使⽤Behave。其他先决条件还包括:必须先安装Python 2.7.14及以上的版本。**需要通过Python包管理器或pip来与Behave协作。⼤多数开发⼈员会选择Pycharm作为开发环境,当然也可以选⽤其他的IDE⼯具。
六、Lettuce
Lettuce是另⼀种基于Cucumber和Python的⾏为驱动类⾃动化⼯具。Lettuce主要专注于那些具有⾏为驱动开发特征的普通任务。它不但简单易⽤,⽽且能够使得整个测试过程更流畅、甚⾄更有趣。
使⽤先决条件:**需要安装带有IDE的Python 2.7.14、及以上的版本。**当然,也可以使⽤Pycharm或任何其他IDE⼯具。同时,还需要安装Python包管理器。
五种⾃动化测试的Python框架中Pytest、Robot Framework和UnitTest可主要⽤于功能与单元测试,⽽Lettuce和Behave仅适⽤于⾏为驱动测试。
版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系QQ:729038198,我们将在24小时内删除。
发表评论