python+unittest,pythonunittest模块
Unittest是Python自己的单元测试框架。
那么我们首先需要知道什么是单元测试。
单元测试也是一种测试活动。
我们通常使用单元测试、集成测试、集成测试和系统测试。
把它们放在一起比较。
单元测试
它通常是一种测试一小段代码的功能的方法,比如一个函数或类。
集成测试
通常将被测系统的几个交互模块(或子系统)作为一个整体进行测试。
与单元测试相比,集成测试的测试对象更大,是一个子系统级测试。
系统测试
有些人也称之为端到端测试,或功能测试。
将整个被测系统视为一个整体进行测试。
它的测试对象更大,是全系统级测试。
这也是通常由测试部门进行的测试。
从上面的描述中,我们可以看出:
单元测试通常是由开发人员完成的一种测试,通常测试函数和方法的代码块。
测试大多设计不同的调用参数来调用函数,看函数的输出是否符合预期。
当然,如果你的代码写得不好,单元测试会很麻烦。
例如,一个功能模块在函数中没有内聚性,而是分散在代码文件中。
在这种情况下,不容易使用函数调用来测试这些函数。
这种情况说明代码质量比较差。
所以有些团队把代码是否易于单元测试作为代码质量的一个指标。
-
通常,单元测试也是整个项目质量的基石。
通常情况下,如果你做好了单元测试,你隐藏bug的机会就会少一些。
项目后期bug越少,收敛趋势。
这将减少回归测试的次数。
为什么?
做过项目开发的人都知道,不成熟的团队往往会改变一个bug,导致新的bug。
根据经验,部分功能和小模块是造成这种情况的原因。
如果单元测试做得好,这些小模块的隐患会在前期消除。不会出现上述情况。
-
当然,在集成测试和系统测试中发现问题,最终的根源还是在代码上,可能是某个功能的bug。
但是它们不是专门用于功能级测试的。
通常情况下,单元测试发现bug的效率最高,成本最低。
因为这个测试是在了解内部小模块实现细节的基础上做的。很有针对性。
通常情况下,单元测试的好处不仅仅是减少bug,还会促使你优化代码结构,设计出更容易理解和维护的代码。
既然单元测试有这么多优点,自然,Python语言在标准库中提供了单元测试的框架,称为unittest。
python中的Unittest受到java中JUnit的启发。而且使用风格也差不多。
例如,它支持自动化、初始化和清除设置,并将测试组织成层次关系,如用例和套件。
要学习unittest,我们必须先了解以下重要概念:
测试夹具:设备
它是指某些试验前的准备工作和试验结束后的清洁工作。比如测试一个数据库查找学生数据的功能,准备工作可以是连接数据库,清理工作可以是断开数据库。
测试用例:用例
这是对单个函数和方法的具体测试。检查一个函数或方法的测试点的功能是否正确。
测试套件:套件
这是测试用例或其他测试套件的集合。如果把测试用例比作文件,那么suite就像一个文件夹。包含文件和其他文件夹。
测试转轮:致动器
它是最终控制测试执行和输出测试结果的模块。它可以提供图形界面或命令行界面,供用户选择执行测试并呈现测试结果。
了解了这些概念,在下一篇文章中,我们将向您展示如何使用python中的unittest库。
郑重声明:本文由网友发布,不代表盛行IT的观点,版权归原作者所有,仅为传播更多信息之目的,如有侵权请联系,我们将第一时间修改或删除,多谢。