本文目录一览:
- 1、Python BDD自动化测试框架有哪些
- 2、python单元测试框架 有哪些
- 3、python自动化测试框架有哪些
- 4、Python自动化测试框架有哪些?
- 5、徒手搭建Python单元测试框架
- 6、基于python的自动化测试框架有哪些
Python BDD自动化测试框架有哪些
Python自动化测试框架比较有名的就是python+selenium,还有单元测试框架PyUnit,还有一个叫做Robot Framework的自动化测试框架,大大小小的有很多
BDD顾名思义Behavior Driven Development,译作"行为驱动开发",是基于TDD (Test Driven Development 测试驱动开发)的软件开发过程和方法。BDD可以让项目成员(甚至是不懂编程的)使用自然语言来描述系统功能和场景,从而根据这些描述步骤进行系统自动化的测试。
BDD的自动化测试框架的话,目前应用最好的是Ruby下的Cucumber,Python下有类似的Behave、Lettuce及Freshen等,这三个都差不多,个人推荐Behave
可以百度这篇文章(我写的):Python BDD自动化测试框架初探
python单元测试框架 有哪些
python单元测试框架 有哪些
同在软件测试岗位。由于同样初学python,所以没有太多的实践经验。
使用python的单元测试框架,可以建立测试类,构造测试集。
测试类中包含了common的测试方法定义,包括测试开始前建立测试环境的setUp方法和测试完成后清理还原环境的tearDown方法,最好按照约定规则(以test开头)来命名所有的测试方法。
测试集允许你根据测试策略组合不同的测试用例并实施。
python自动化测试框架有哪些
第一种:Robot Framework
作为最重要的python测试框架之一,Robot Framework主要被用在测试驱动类型的开发与验收中。虽然由python开发而来,但是它也可以在基于.net的Ironpython和基于Java的Jython上运行。同时,作为一个python框架,Robot还能够兼容诸如Windows、MacOS、Linux等平台。
在使用Robot Framework之前,需要先安装python2.7.14及以上版本,在这里推荐大家使用python3.6.4,以确保适当的注解能够被添加到代码段中,并能够跟踪程序的更改,同时,您还需要安装python包管理器--pip。
第二种:Pytest
适用于多种软件测试的Pytest,是另一个python类型的自动化测试框架。凭借着开源和易学的特点,该工具经常被QA团体、开发团体、个人团体以及各种开源项目所使用。鉴于Pytest具有断言重写之类的实用功能,许多大型互联网应用,如Dropbox、Mozilla,都已经从下面将要提到的unittest切换到了Pytest之上。
除了基本的python知识,用户并不需要更多的技术储备。另外,用户只需要有一台带有命令行界面的测试设备,并且安装好了python包管理器以及可用于开发的IDE工具。
第三种:UnitTest/PyUnit
受到Junit启发的UnitTest/PyUnit,也是一种标准化的针对单元测试的python类自动化测试框架。它的基类TestCase提供了各种断言方法、以及所有清理和设置的例程。因此,TestCase子类中的每一种方法都是以test作为名词点缀,以标识它们能够被作为测试用例所运行。用户可以使用load方法和TestSuite类来分组、并加载各种测试。当然,也可以通过联合使用,来构建自定义的测试运行器。正如我们使用Junit去测试Selenium那样,UnitTest也会用到unittest-sml-reporting,并能生成各种XML类型的报告。
第四种:Behave
行为驱动开发是一种基于敏捷软件开发的方法。它能够鼓励开发人员、业务参与者和QA人员,三者之间的协作。python测试框架Behave允许团队避开各种复杂的情况,去执行BDD测试。从本质上说该框架与SpecFlow和Cucumber相似,常被用于执行自动化测试。用户可以通过简单易读的语言来编写测试用例,并能够在其执行期间粘贴到代码之中。而且,那些被设定的行为规范与步骤,也可以被重用到其他的测试方案中。
第五种:Lettuce
Lettuce是另一种基于Cucumber和python的行为驱动类自动化工具。Lettuce主要专注于那些具有行为驱动开发特性的普通任务。它不但简单易用,而且能够使得整个测试过程更流畅、甚至更有趣。
您需要安装带有IDE的python2.7.14及以上版本。当然,您也可以使用pycharm或任何其他IDE工具。同时,您还需要安装python包管理器。
Python自动化测试框架有哪些?
自动化测试常用的Python框架有哪些?常用的框架有Robot Framework、Pytest、UnitTest/PyUnit、Behave、Lettuce。Pytest、Robot Framework和UnitTest主要用于功能与单元测试,Lettuce和Behave仅适用于行为驱动测试。
一、Robot Framework
Python测试框架之一,Robot Framework被用在测试驱动(test-driven)类型的开发与验收中。虽然是由Python开发而来,但是它也可以在基于.Net的IronPython和基于Java的Jython上运行。作为一个Python框架,Robot还能够兼容诸如Windows、MacOS、以及Linux等平台。
在使用Robot Framework(RF)之前,需要先安装Python 2.7.14及以上的版本。推荐使用Python 3.6.4,以确保适当的注释能够被添加到代码段中,并能够跟踪程序的更改。同时还需要安装Python包管理器--pip。
二、Pytest
适用于多种软件测试的Pytest,是另一个Python类型的自动化测试框架。凭借着其开源和易学的特点,该工具经常被QA(质量分析)团队、开发团队、个人团队、以及各种开源项目所使用。鉴于Pytest具有“断言重写(assert rewriting)”之类的实用功能,许多大型互联网应用,如Dropbox和Mozilla,都已经从下面将要提到的unittest(Pyunit)切换到了Pytest之上。
除了基本的Python知识,用户并不需要更多的技术储备。另外,用户只需要有一台带有命令行界面的测试设备,并且安装好了Python包管理器、以及可用于开发的IDE工具。
三、UnitTest/PyUnit
UnitTest/PyUnit一种标准化的针对单元测试的Python类自动化测试框架。基类TestCase提供了各种断言方法、以及所有清理和设置的例程。因此,TestCase子类中的每一种方法都是以“test”作为名词前缀,以标识它们能够被作为测试用例所运行。用户可以使用load方法和TestSuite类来分组、并加载各种测试。
可以通过联合使用,来构建自定义的测试运行器。正如我们使用Junit去测试Selenium那样,UnitTest也会用到UnitTest-sml-reporting、并能生成各种XML类型的报告。由于UnitTest默认使用了Python,因此我们并不需要什么先决条件。除了需要具备Python框架的基本知识,您也可以额外地安装pip、以及用于开发的IDE工具。
四、Behave
行为驱动开发是一种基于敏捷软件开发的方法。它能够鼓励开发人员、业务参与者和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单元测试框架
稍微具有一定规模的企业对于软件开发一般都会要求写单元测试,虽然各自标准不同,有的可能要求覆盖率达到50即可,而像我司这种竟然要求行覆盖率和分支覆盖率都要到95%以上。本文会手把手教你如何在项目初期搭建单元测试框架,以便能够指导后续开发进行单元测试编写和测试报告生成。本文适合python项目的架构师或者核心发起者。如果是小白也可以了解下单元测试是怎么搭建的以及一些单元测试的原则。
一般项目如果是web项目都会有配置文件,那么启动单元测试的应用上下文也需要测试用的配置文件。下面是一个基于flask开发的web项目的单元测试配置文件。大家可以参考下。如果项目不是web项目而是脚本仓库也可以不需要这块。
基础测试类会初始化测试应用上下文以及内存数据库初始化,以及测试完成后的数据清理
测试聚合类是用来扫描所有测试模块并运行测试用例的
python的Coverage库是用来生成测试报的,可以通过.coverage文件配置测试报告的内存,包括忽略项,是否包含分支覆盖率,测试报告生成位置和形式(xml或者html)等
通过运行以下coverage 模块生成测试报告
基于python的自动化测试框架有哪些
好象python的浏览器测试框架,原来只有一个,还是仿ruby的框架做的。似乎在IE上可以比较好的应用。很老的框架。对JS支持不好。
不过python写个测试框架真是非常容易的事情,随手就来。 基于浏览器测试也容易做。因为你可以使用pyqt,这个库里有一个基于webkit的浏览器。基本上,想做什么都可以了。
最近听说有几个新的BDD的框架正在做。也不知道怎么样。
其实对于python这种语言来说,框架的成本太低。所以最好不要做框架。它有一个基本的编程原则则DRY。do not repeat yourself。不要再造轮子的意思。
直接使用现有的python的testsuite结合进程,线程模型,还有QT轻松就组装出一个测试模块。