程序员的测试课
郑晔
前火币网首席架构师,前Thoughtworks首席咨询师
新⼈⾸单¥59.9
1094 人已学习
课程目录
已更新 16 讲 / 共 20 讲
0/2登录后,你可以任选2讲全文学习。
开篇词 (1讲)
开篇词 | 为什么写测试是程序员的本职工作?
基础篇 (11讲)
01 | 实战:实现一个 ToDo 的应用(上)
02 | 实战:实现一个 ToDo 的应用(下)
03 | 程序员的测试与测试人员的测试有什么不同?
04 | 自动化测试:为什么程序员做测试其实是有优势的?
05 | 一个好的自动化测试长什么样?
06 | 测试不好做,为什么会和设计有关系?
07 | Mock 框架:怎么让测试变得可控?
08 | 单元测试应该怎么写?
09 | 测试覆盖率:如何找出没有测试到的代码?
10 | 为什么 100% 的测试覆盖率是可以做到的?
11 | 集成测试:单元测试可以解决所有问题吗?
应用篇 (4讲)
12 | 实战:将 ToDo 应用扩展为一个 REST 服务
13 | 在 Spring 项目中如何进行单元测试?
14 | 在 Spring 项目如何进行集成测试?
15 | 测试应该怎么配比?
程序员的测试课
15
15
1.0x
00:00/00:00
登录|注册

15 | 测试应该怎么配比?

你好,我是郑晔!
经过前面内容的讲解,相信你对在实际项目中如何编写单元测试和集成测试已经有了一个基本的认识。无论你是经验丰富的老程序员还是初入职场的新程序员,如果只是单独写几个测试,相信你都可以手到擒来。但真实的项目中我们不是要编写几个测试,而是要大批量地编写测试。
一旦编写的测试增多,你脑海里必然会出现一个疑问:有一些内容用单元测试覆盖可以,用集成测试覆盖也可以,如果只写单元测试总有些不放心,如果同时用单元测试和集成测试去覆盖,工作量似乎又会增大,不同的测试应该怎样配比呢?这就是我们这一讲要讨论的内容。

测试的特点

在讨论如何配比测试之前,我们需要先了解各种类型测试的特点,毕竟正是因为它们有着不同的特点,我们才需要对不同的测试按照不同的比例进行配比。
首先来看单元测试。单元测试是针对一个单元的测试,因为涉及面很小,所以单元测试要进行的设置会比较少。单元测试不牵扯到外部组件,一般而言只在内存中执行,执行速度很快。所以谈及单元测试的特点我们一般会说,它成本低、速度快、单个测试的覆盖面小,但整体覆盖面大。
再来看集成测试。相比于单元测试来说,集成测试的涉及面要广一些,设置起来就比较麻烦。有的集成测试还会集成外部组件,这也就意味着设置起来要更麻烦,比如你在上一讲见识过的数据库测试,就要准备各种配置信息。同时,无论是组件多还是集成外部组件,这都意味着执行速度要比单元测试慢。所以相比于单元测试,集成测试成本要高一些、速度要慢一点;单个测试的覆盖面要大一些,但整体覆盖面要小一些。
确认放弃笔记?
放弃后所记笔记将不保留。
新功能上线,你的历史笔记已初始化为私密笔记,是否一键批量公开?
批量公开的笔记不会为你同步至部落
公开
同步至部落
取消
完成
0/1000字
划线
笔记
复制
该试读文章来自付费专栏《程序员的测试课》,如需阅读全部文章,
请订阅文章所属专栏新⼈⾸单¥59.9
立即订阅
登录 后留言

精选留言(2)

  • grandgraph
    开发不愿意写单元测试, 说单元测试没用的, 大部分是不会写. 这变向地给QA增加了很多不必要的工作负担, 本应通过单元测试发现的Bug会逃逸到更高层次的测试中, 导致的现象就是: 研发改一行, QA测一天.
    2021-09-06
    1
  • 大碗
    单测比集测多,那么单测和集成测试的比例是多少?
    集成是否只测happyPath就可以呢?
    2021-09-06
收起评论
2
返回
顶部