python的单元测试框架
1、Autotest
Autotest是Google、Redhat、IBM公司联合开发的分布式自动化测试框架,兼顾软硬件测试。基于Python,用于操作系统内核冒烟测试、服务器硬件验证等。使用Autotest有两个前提:被测机上需安装Python;测试发起机器与被测机间要建立无密码SSH信任关系。
2、Testoob
testoob是一个针对python的高级单元测试框架。它集成了现有的PyUnit(模块“UNITTEST”)测试套件,便于使用和进行扩展。目前使用人数和社区生态均较少。
3、Doctest
doctest是一个Python发行版自带的标准模块,利用文档的形式模拟代码的执行操作。采用交互式会话的Python代码片段,测试执行并验证结果,代码和测试用例没有进行分离。
4、TheHaskellTestFramework
允许一种简单方便的方式进行黑匣子测试,自动收集测试定义的自定义预处理器。预处理器允许用准确的文件名和行号信息报告失败的测试用例。可以为失败的测试生成高度可读的输出,目前用于单元测试使用人数较少。
5、TwistedTrial
对PyUnit的扩展,trial是Twisted的测试脚本程序,针对Linux的,编译好的trial在Windows下无法直接运行,前用于单元测试使用人数较少。
6、ShouldDSL
分布式测试工具,应用较少。
7、Green
Python测试运行程序,应用于单元测试人数较少。
8、Mock
Python用于支持单元测试的库,它的主要功能是使用mock对象替代掉指定的Python对象,以达到模拟对象的行为,然后验证后续的执行是否正确。在进行单元测试的时候,可以指定任何对象的返回值,便于测试对外部接口有依赖的代码(导入型代码)。从Python3.3开始,mock模块已经被合并到标准库中,被命名为unittest.mock,可以直接进行使用。
9、MOX
Python的基于mock的单元测试框架。应用案例和使用人数相对较少。
10、Tox
通用的虚拟环境管理和测试命令行工具。tox能够让我们在同一个Host上自定义出多套相互独立且隔离的python环境。用于运行静态代码分析、测试工具和自动化程序包构建,但应用单元测试较少。
11、Pytest
pytest是根据MIT许可的条款发行的免费和开源软件。
pytest是Python另一个第三方单元测试库。它的目的是让单元测试变得更容易,并且也能扩展到支持应用层面复杂的功能测试。pytest兼容unittest框架的代码,可以用来运行unittest测试用例。
pytest的特性有:
1)支持用简单的assert语句实现丰富的断言,无需复杂的self.assert*函数。
2)自动识别测试模块和测试函数。
3)兼容unittest和nose测试集。
4)支持Python3和PyPy3。
5)丰富的插件生态,已有300多个各式各样的插件,和活跃的社区。
用例编写:pytest支持函数、测试类形式的测试用例。并且可以方便地使用assert语句进行断言,不用担心在nose或unittest中产生的缺失详细上下文信息的问题。
用例发现和执行:unittest和nose所支持的用例发现和执行能力,pytest均支持。pytest支持用例自动(递归)发现:
默认发现当前目录下所有符合test_*.py或*_test.py的测试用例文件中,以test开头的测试函数或以Test开头的测试类中的以test开头的测试方法。执行指定用例:指定测试文件路径
以上内容为大家介绍了python的单元测试框架,希望对大家有所帮助,如果想要了解更多Python相关知识,请关注IT培训机构:千锋教育。http://www.mobiletrain.org/
相关推荐HOT
更多>>Ppython await是什么?
await的解释:await用来声明程序挂起。比如异步程序执行到某一步时需要等待的时间很长,就将此挂起,去执行其他的异步程序。await后面只能跟异...详情>>
2023-11-06 20:47:43Python企业应用的优缺点
Python是软件开发领域一朵诱人的奇葩:人们经常把Python看作是一种起到缝合作用的严格脚本语言,不过却很少有人意识到Python已经足够强大到应用...详情>>
2023-11-06 18:04:55Python自定义模块导入方法
Python模块是一个Python文件,以.py结尾,包括了Python对象定义和Python语句,能让Python代码段更有逻辑性、更好用、更易懂,既然Python模块有...详情>>
2023-11-06 12:51:53Python中yield的用法详解
首先我要吐槽一下,看程序的过程中遇见了yield这个关键字,然后百度的时候,发现没有一个能简单的让我懂的,讲起来真TM的都是头头是道,什么参...详情>>
2023-11-06 11:43:31