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

17 | TDD 就是先写测试后写代码吗?

你好,我是郑晔!
到这里,我已经给你介绍了在真实项目中做好测试需要的基础知识。写测试远远不是用 xUnit 框架写代码就能做好的一件事,只有在工作方式、软件设计、编写代码、测试理念等方方面面都做好,我们才能做好测试。不过随之而来的是,我们有了一个强大的测试基础,这可以让我们放心大胆地不断向前,因为我们已经进入到编写高质量代码的正向循环之中。越写测试越安心,越安心也就越有时间编写高质量的代码。
有了这些基础,应对日常工作已经绰绰有余。不过在行业里总有人在探索着更好的做法,所以在最后的扩展篇,我将给你介绍 TDD 和 BDD 两项实践。在你学有余力的情况下,可以挑战一下,让自己再向前走一步。这一讲,我们先来说说 TDD,也就是测试驱动开发(Test Drvien Development)。

TDD 的节奏

或许你已经迫不及待地要举手了:“TDD 我知道,就是先写测试,后写代码。”但真的是这样吗?严格地说,“先写测试、后写代码”的做法叫测试先行开发(Test First Development),而不是测试驱动开发。
测试驱动开发不也是先写测试后写代码吗?二者之间有什么区别呢?
要回答这个问题,我们需要知道 TDD 的一个关键要素,TDD 的节奏:红 - 绿 - 重构
确认放弃笔记?
放弃后所记笔记将不保留。
新功能上线,你的历史笔记已初始化为私密笔记,是否一键批量公开?
批量公开的笔记不会为你同步至部落
公开
同步至部落
取消
完成
0/1000字
划线
笔记
复制
该试读文章来自付费专栏《程序员的测试课》,如需阅读全部文章,
请订阅文章所属专栏新⼈⾸单¥59.9
立即订阅
登录 后留言

精选留言(1)

  • 李威
    TDD是两头驱动:向前驱动出任务分解,软件设计,整洁架构;向后驱动出代码重构,整洁代码。

    作者回复: 这个理解很好

    2021-09-10
    3
收起评论
1
返回
顶部