今天的文章,琳琳会从以下几个方面来细说:
测试的分层体系
单元测试的概念
单元测试的框架
咱就不废话了,开始吧。
大家如果需要我的一些软件测试学习资料、面试资料
或者想和广大群友讨论【怎么学软件测试、自动化测试的都可以点这里】✔←
主流的测试分层体系可以分为:
单元测试、
接口测试、
界面测试。
单元测试
粒度最细,外部依赖少,主要检查最小模块的代码,逻辑性;
接口测试
相对界面测试成本较低,测试模块与模块之间的组合与关联;
界面测试
最为直观,但成本高,外部依赖多,实施起来最困难,接口测试和界面测试保证了产品的质量和数据验证。
二.单元测试咱们今天的主角是单元测试,所以呢主角要出场了。
对于面向对象语言,单元是一个类;
单元其实就是程序最小的模块,也可能是一个函数。
总而言之, 单元测试指人为规定的最小被测功能模块。
大家如果需要我的一些软件测试学习资料、面试资料
或者想和广大群友讨论【怎么学软件测试、自动化测试的都可以点这里】✔←
框架:框架可以理解为一种模型,一种行为的核心骨架,是可以重复照着使用的。
单元测试框架:其实就是我们在进行单元测试的一种模式
单元测试框架一般分为以下几种核心功能:
1、提供用例组织与执行:
测试用例只有几条时,可以不考虑用例组织,但是用例达到成百上千时,大量的测试用例堆砌在一起,就产生了扩展性与维护性等问题!
比如:测试夹具,测试套件
2、提供丰富的断言方法
在用例执行完之后都需要将实际结果与预期结果相比较(断言),从而断定用例是否执行通过。单元测试框架一般提供丰富的断言方法。
3、提供丰富的日志
四、目前主流的单元测试框架1、unittest
(Python 标准库)
单元测试框架
UnitTest是Python自带的一个单元测试框架,用它来做单元测试。
也经常应用到UI自动化测试和接口自动化测试中,用来管理和维护测试用例脚本。
优点:
-
能够组织多个用例去执行(可以把多条测试用例封装成一个测试套件,实现批量执行测试用例)
-
提供了丰富的断言方法,方便对用例执行的结果进行判断
-
能够生成HTML格式的测试报告
2、pytest
一个成熟的全功能 Python单元测试框架
pytest 是 python 的第三方单元测试框架,比自带 unittest 更简洁和高效,支持非常丰富的插件,同时兼容 unittest 框架。这就使得我们在 unittest 框架迁移到 pytest 框架的时候不需要重写代码。
优点:
1、简单灵活,容易上手
2、支持参数化
3、能够支持简单的单元测试和复杂的功能测试,还可以用来做selenium/appium等自动化测试,接口自动化测试(pytest+request)
4、pytest具有很多第三方插件,并且可以自定义扩展,
3、JUnit
junit是一个Java语言的单元测试框架,用于编写和运行可重复的测试。
JUnit是一个Java语言的单元测试框架。它由Kent Beck和Erich Gamma建立,逐渐成为源于Kent Beck的sUnit的xUnit家族中最为成功的一个。JUnit有它自己的JUnit扩展生态圈。多数Java的开发环境都已经集成了JUnit作为单元测试的工具。
大家如果需要我的一些软件测试学习资料、面试资料
或者想和广大群友讨论【怎么学软件测试、自动化测试的都可以点这里】✔←



