代码整洁之道 读书笔记 - 第9章 单元测试

TDD三定律

定律一 在编写不能通过的单元测试前,不可编写生产代码。

定律二 只可编写刚好无法通过的单元测试,不能编译也算不通过。

定律三 只可编写刚好以通过当前失败测试的生产代码。

保持测试整洁

测试代码和生产代码一样重要。它需要被思考、被设计和被照料。它该像生产代码一般保持整洁。

整洁的测试

在单元测试中,可读性甚至比生产代码中还重要。测试如何才能做到可读?明确,简洁,还有足够的表达力。

每个测试都清晰地拆分为三个环节,构造-操作-检验BUILD-OPERATE-CHECK)模式。

    第一个环节构造测试数据。

    第二个环节操作测试数据。

    第三个部分检验操作是否得到期望的结果。

每个测试一个断言

最好的说法是单个测试中的断言数量应该最小化。

每个测试函数中只测试一个概念。

F.I.R.S.T.

整洁的测试还遵循以下5条规则

快速Fast) 测试应该够快。

独立Independent) 测试应该相互独立。

可重复Repeatable) 测试应当可在任何环境中重复通过。

自主验证Self-Validating) 测试应该有布尔值输出。

及时Timely) 测试应及时编写。

posted @ 2018-11-26 16:49  TanSea  阅读(242)  评论(0编辑  收藏  举报