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的浏览器测试框架,原来只有一个,还是仿ruby的框架做的。似乎在IE上可以比较好的应用。很老的框架。对JS支持不好。

不过python写个测试框架真是非常容易的事情,随手就来。 基于浏览器测试也容易做。因为你可以使用pyqt,这个库里有一个基于webkit的浏览器。基本上,想做什么都可以了。

最近听说有几个新的BDD的框架正在做。也不知道怎么样。

其实对于python这种语言来说,框架的成本太低。所以最好不要做框架。它有一个基本的编程原则则DRY。do not repeat yourself。不要再造轮子的意思。

直接使用现有的python的testsuite结合进程,线程模型,还有QT轻松就组装出一个测试模块。

1、Pytest

适用于多种软件测试的Pytest,是另一个Python类型的自动化测试框架。凭借着其开源和易学的特点,该工具经常被QA团队、开发团队、个人团队以及各种开源项目所使用。鉴于Pytest具有断言重写之类的实用功能,许多大型互联网应用,如Dropbox和Mozilla,都已经从下面将要提到的unittest切换到Pytest之上。

2、Robot Framework

作为重要的Python测试框架之一,Robot
Framework主要被用在测试驱动类型的开发与验收中。虽然是由Python开发而来,但是它也可以在基于.net的IronPython和基于Java的Jython上运行。同时,作为一个Python框架,Robot还能够兼容诸如Windows、MacOS、以及Linux等平台。

3、UnitTest/PyUnit

受到了JUnit启发的UnitTest/PyUnit,也是一种标准化的针对单元测试的Python类自动化测试框架。它的基类TestCase提供了各种断言方法、以及所有清理和设置的例程。因此,TestCase子类中的每一种方法都是以test作为名词前缀,以标识它们能够被作为测试用例所运行。用户可以使用load方法和TestSuite类来分组、并加载各种测试。当然,您也可以通过联合使用,来构建自定义的测试运行器。正如我们使用Junit去测试selenium那样,UnitTest也会用到UnitTest-sml-reporting、并能生成各种xml类型的报告。

4、Behave

我们都知道:行为驱动开发,是一种基于敏捷软件开发的方法。它能够鼓励开发人员、业务参与者和QA人员,三者之间的协作。作为另一种Python测试框架,Behave允许团队避开各种复杂的情况,去执行BDD测试。从本质上说,该框架与SpecFlow和Cucumber非常相似,常被用于执行自动化测试。用户可以通过简单易读的语言来编写测试用例,并能够在其执行期间粘贴到代码之中。而且,那些被设定的行为规范与步骤,也可以被重用到其他的测试方案中。

5、Lettuce

Lettuce是另一种基于Cucumber和Python的行为驱动类自动化工具。Lettuce主要专注于那些具有行为驱动开发特征的普通任务。它不但简单易用,而且能够使得整个测试过程更流畅、甚至更有趣。



1、Unittest
是python内置的标准类库,它的API跟java的Junit、.net的NUnit、C++的CppUnit很相似,通过继承unittest.TestCase来创建一个测试用例。
2、 Doctest
Doctest模块会搜索那些看起来像交互式会话的python代码片段,然后尝试执行并验证结果,即使从来没有接触过Doctest,我们也可以从这个名字中窥到一丝端倪,它看起来就好像代码里的文档字符串(docstring)一样。
3、py.test
是python的一种单元测试框架,与python自带的unittest测试框架类似,但是比unittest框架使用起来更加简洁、效率更高;根据官方介绍,它具有以下特点:非常容易上手、入门简单、文档丰富,有很多实例可以参考;能够支持简单的单元测试和复杂的功能测试;支持参数化;支持重复执行失败的case。
4、Nose
Nose是对unittest的扩展,使得python的测试更加简单,Nose自动发现测试代码并执行,提供了大量的插件,nose不是python自带模块,需要用pip安装。
5、tox
最大的特色,是自动化测试环境的管理以及使用多个解析器配置进行测试;
6、Unittest2
是Unittest的升级版本,对API进行了改善以及更好的诊断语法。

有很多,目前比较常用的是RobotFramework框架。兼容性很好,同时可以满足java、c、python模块的调用
图形界面,有操作有内置方法函数,很多扩展模块,很方便


如何搭建python自动化测试框架
1 新建一台Jenkins服务器,安装并配置好Jenkins 2 配置一个自动化测试脚本的代码库,可以使用Git或者SVN等版本控制工具。然后在Jenkins服务器上配置一个Job,负责自动的同步最新代码到Jenkins服务器上。3 配置要跑自动化测试的虚拟机VM,推荐干净环境下安装需要跑自动化测试的依赖软件工具或者配置以及自动化...

python自动化测试需要学什么
掌握自动化测试技术并能灵活应对不同的测试需求,Python自动化测试学习内容:1-1 自动化测试基础 自动化测试概述 工具介绍及安装 常用命令 1-2 自动化测试环境搭建 Appium介绍及安装 Appium Capability配置介绍 Appium界面介绍 Appium简单使用 1-3 Appium 基础运用 1-4 yaml配置文件使用 1-5 单元测试框架...

基于Appium+WDA+Python搭建IOS自动化测试全纪录(三):真机demo运行_百度...
前期回顾: 基于Appium+WDA+Python搭建IOS自动化测试全纪录(二):模拟器demo运行 基于Appium+WDA+Python搭建IOS自动化测试全纪录(一):环境搭建 在模拟器将demo跑通之后,就要在真机上测试啦,模拟器总是要为真机服务的。在真机上主要是涉及到签名及证书的问题,一下blog写的特别好,然而其实我也没...

python的uiautomator包做安卓自动化测试,怎么解决中文不能输入的问题...
1.uiautomator环境的安装 在linux和ubuntu中我们可以执行pip install uiautomator去安装这个环境。2.如果在执行脚本是遇到这个错误IOError: RPC server not started!:首先我们应该先检查d = Device('值') 里面的值 有没有问题(adb devices 可以查看)如果没有问题的话,在安卓7.0上如果执行不好使 ...

python自动化测试怎么将多个依赖数据
接口测试中,有些场景接口间存在着数据依赖的问题,比如说提交订单前需要用户先登录等等,下面就用两个小案例说说数据依赖的问题。两个接口,一个接口(project_add)用来创建测试项目,一个接口(env_add)用来创建测试环境,env_add接口需依赖project_add接口返回的project_id字段数据。一、Postman解决数据依赖...

使用python做接口自动化测试容易吗
为什么要做接口自动化测试?在当前互联网产品迭代频繁的背景下,回归测试的时间越来越少,很难在每个迭代都对所有功能做完整回归。但接口自动化测试因其实现简单、维护成本低,容易提高覆盖率等特点,越来越受重视。为什么要自己写框架呢?使用Postman调试通过过直接可以获取接口测试的...

自动化测试时需要使用python,请问如何理解python中的全局变量和局部变量...
提供理解供参考:简单点来说:1、在python中,全局变量可以直接访问,而局部变量只能在定义的块(如函数体)内部或是通过函数访问。2、同名的变量,会优先使用局部变量。为更好理解,示例代码如下:代码运行结果:3、可以在函数体内部,使用 global 来字义一个全局变量,在使用之前这个全局变量必须初始化。

谁有Python接口自动化测试,帮一下!急需教材!求!
我这里有您想要的资源,通过百度网盘免费分享给您:https:\/\/pan.baidu.com\/s\/1DcK80RfcGioiVJ02goxVhQ 提取码:1234 本书主要介绍如何用Python实现接口自动化测试。全书主要内容包括接口基础、接口手工测试、编程前的准备、用Python处理MySQL数据库、用Python发送HTTP请求、用Python处理HTTP返回包、用Python...

python+appium自动化测试-重复执行测试用例
来自APP Android端自动化测试初学者的笔记,写的不对的地方大家多多指教哦。在功能测试过程中,经常会遇到一些偶然出现的Bug,需要通过重复执行用例来复现问题,那么,在自动化测试的过程中,对于一些偶然出现的Bug,也可以针对单个用例,或者针对某个模块的用例重复执行多次来复现。重复执行测试用例的方法这边...

Python可以做自动化测试吗?
当然可以,除了自动化测试外,自动化运维、爬虫、网站开发、游戏开发、人工智能也可以。

富蕴县15369337206: 基于python的自动化测试框架有哪些 -
卫振恒恩: 好象python的浏览器测试框架,原来只有一个,还是仿ruby的框架做的.似乎在IE上可以比较好的应用.很老的框架.对JS支持不好. 不过python写个测试框架真是非常容易的事情,随手就来. 基于浏览器测试也容易做.因为你可以使用pyqt,这个库里有一个基于webkit的浏览器.基本上,想做什么都可以了. 最近听说有几个新的BDD的框架正在做.也不知道怎么样. 其实对于python这种语言来说,框架的成本太低.所以最好不要做框架.它有一个基本的编程原则则DRY.do not repeat yourself.不要再造轮子的意思. 直接使用现有的python的testsuite结合进程,线程模型,还有QT轻松就组装出一个测试模块.

富蕴县15369337206: python自动化测试的工具有哪些 -
卫振恒恩: 同在软件测试岗位.由于同样初学python,所以没有太多的实践经验. 使用python的单元测试框架,可以建立测试类,构造测试集. 测试类中包含了common的测试方法定义,包括测试开始前建立测试环境的setUp方法和测试完成后清理还原环境的tearDown方...

富蕴县15369337206: Python自动化测试工具大概有哪些 -
卫振恒恩: 一、对于你的问题,首先明确测试类型,然后才能明确自动化测试类型,最后定位哪个类型用哪个方面的自动化测试工具. 1、测试类型可以包括:白盒测试、黑盒测试(功能测试、性能测试)等. 2、不同的测试类型使用的自动化测试方法不...

富蕴县15369337206: 支持python编写脚本的自动化测试工具? -
卫振恒恩: Web UI test automation Web UI 自动化 libraries 各种库selenium webdriver - 浏览器自动化工具splinter - 简单的web自动化工具,让元素定位,表单提交等更加容易mechanize - 有状态可编程的浏览器frameworks and wrappers 框架和封装py....

富蕴县15369337206: 如何用python做自动化测试 -
卫振恒恩: 目前大家对Python都有一个共识,就是他对测试非常有用,自动化测试里Python用途也很广,但是Python到底怎么进行自动化测试呢?今天就简单的向大家介绍一下怎么使用Python进行自动化测试,本文只是自己的一点点分享,若有错误,请大...

富蕴县15369337206: python 的接口自动化测试使用的核心库是哪一个? -
卫振恒恩: 就是使python去实现接口测试,说白了就是写一些测试逻辑.python去写,速度快,简单python也有很多自动化测试相关的工具.roboframework,是一个自动化测试框架,写自动化非常简单.

富蕴县15369337206: 自动化测试工具有哪些 -
卫振恒恩: QTP全名HP QuickTest Professional software ,最新的版本为HP QuickTest Professional 11.0QTP是quicktest Professional的简称,是一种自动测试工具.使用QTP的目的是想用它来执行重复的手动测试,主要是用于回归测试和测试同一软件的...

富蕴县15369337206: 自动化测试框架都有哪些? -
卫振恒恩: 自动化测试框架主要分为以下几种,可以根据项目需要进行选择 1.模块化框架(test script modularity). 2.函数库结构框架(test library architecture). 3.关键字驱动测试框架(keyword-driven/table-driven testing). 4.数据驱动测试框架(data-driven testing).

富蕴县15369337206: python+selenium 用什么自动化测试框架 -
卫振恒恩: 其实python自带的uinttest就挺好的 驱动数据的话,直接用下面这样的代码就行 source = open("input_file.txt", "r") values = source.readlines() for search in values: selenium.open("/test_page")selenium.click("buttonPress") ... # test ... ...

富蕴县15369337206: python自动化测试 什么方面 -
卫振恒恩: python自动化测试 什么方面 Bottle: 微型Python Web框架 Bottle是一个简单高效的遵循WSGI的微型python Web框架.说微型,是因为它只有一个文件,除Python标准库外,它不依赖于任何第三方模块.Tornado:异步非阻塞IO的Python Web框架 Tornado的全称是Torado Web Server,从名字上看就可知道它可以用作Web服务器,但同时它也是一个Python Web的开发框架.最初是在FriendFeed公司的网站上使用,FaceBook收购了之后便开源了出来.

本站内容来自于网友发表,不代表本站立场,仅表示其个人看法,不对其真实性、正确性、有效性作任何的担保
相关事宜请发邮件给我们
© 星空见康网