searchusermenu
  • 发布文章
  • 消息中心
点赞
收藏
评论
分享
原创

单元测试的概念与分类

2024-05-30 01:31:20
2
0

什么是单元测试

  • 在计算机编程中,单元测试又称为模块测试,是针对程序模块来进行正确性检验的测试工作。程序单元是应用的最小可测试部件。在过程化编程中,一个单元就是单个程序、函数、过程等;对于面向对象编程,最小单元就是方法,包括基类、抽象类、或者派生类中的方法。

单元测试和集成测试的区别

  • 回到测试的本质来看,测试工作就是模拟真实环境,在代码正式上线前进行验证的工作,即使没有任何工具和方法,这项工作也能够通过人工操作来手动完成。但这种方式显然不符合软件从业者的习惯,于是开始出现了各种各样的自动化测试方法,框架和工具。
  • 首先需要达成一致的是,无论是单元测试还是集成测试,它们都是自动化测试。为了更好地区分,我们可以这样理解:和生产代码以及单元测试代码在同一个代码仓库中,由开发同学自己编写的,对外部环境(数据库、文件系统、外部系统、消息队列等)有真实调用的测试就是集成测试。下表中也从各种角度来对比了单元测试、集成测试和系统级别测试(包括端到端测试、链路测试、自动化回归测试、UI测试等)的区别。

单元测试

集成测试

系统级别测试

编写人员

开发

开发

开发 / 测试

编写场地

生产代码仓库内

生产代码仓库内

生产代码仓库内 / 生产代码仓库外

编写时间

代码发布前

代码发布前

代码发布前 / 代码发布后

编写成本

编写难度

反馈速度

极快,秒级

较慢,分钟级

慢,天级别

覆盖面积

代码行覆盖60-80% 分支覆盖40-60%

功能级别覆盖HappyPath

核心保障链路

环境依赖

代码级别,不依赖环境

依赖日常或本地环境

依赖预发或生产环境

外部依赖模拟

全部模拟

部分模拟

不模拟,完全使用真实环境

0条评论
0 / 1000
t****n
4文章数
0粉丝数
t****n
4 文章 | 0 粉丝
t****n
4文章数
0粉丝数
t****n
4 文章 | 0 粉丝
原创

单元测试的概念与分类

2024-05-30 01:31:20
2
0

什么是单元测试

  • 在计算机编程中,单元测试又称为模块测试,是针对程序模块来进行正确性检验的测试工作。程序单元是应用的最小可测试部件。在过程化编程中,一个单元就是单个程序、函数、过程等;对于面向对象编程,最小单元就是方法,包括基类、抽象类、或者派生类中的方法。

单元测试和集成测试的区别

  • 回到测试的本质来看,测试工作就是模拟真实环境,在代码正式上线前进行验证的工作,即使没有任何工具和方法,这项工作也能够通过人工操作来手动完成。但这种方式显然不符合软件从业者的习惯,于是开始出现了各种各样的自动化测试方法,框架和工具。
  • 首先需要达成一致的是,无论是单元测试还是集成测试,它们都是自动化测试。为了更好地区分,我们可以这样理解:和生产代码以及单元测试代码在同一个代码仓库中,由开发同学自己编写的,对外部环境(数据库、文件系统、外部系统、消息队列等)有真实调用的测试就是集成测试。下表中也从各种角度来对比了单元测试、集成测试和系统级别测试(包括端到端测试、链路测试、自动化回归测试、UI测试等)的区别。

单元测试

集成测试

系统级别测试

编写人员

开发

开发

开发 / 测试

编写场地

生产代码仓库内

生产代码仓库内

生产代码仓库内 / 生产代码仓库外

编写时间

代码发布前

代码发布前

代码发布前 / 代码发布后

编写成本

编写难度

反馈速度

极快,秒级

较慢,分钟级

慢,天级别

覆盖面积

代码行覆盖60-80% 分支覆盖40-60%

功能级别覆盖HappyPath

核心保障链路

环境依赖

代码级别,不依赖环境

依赖日常或本地环境

依赖预发或生产环境

外部依赖模拟

全部模拟

部分模拟

不模拟,完全使用真实环境

文章来自个人专栏
个人专栏202405
1 文章 | 1 订阅
0条评论
0 / 1000
请输入你的评论
0
0