笔记: Design for Testability

最近读到一篇深得我心的文章 Design for Testability 核心一句话概括就是:

Optimize your code for testability

为了可测试性而优化你的代码.

这样不仅可以提升测试的质量, 也可以提升代码的质量, 文中提出几个收益:

A preference for pure functions over immutable data

会为了好写测试而偏重于写一些 pure function

Small modules with well-defined interfaces

模块化也会做的好.

A separation of IO and computation

IO 相关逻辑与计算逻辑会分开

Explicit declaration of dependencies

会有明确的依赖的声明, 便于测试

后续作者还补充了一篇 How I Test, 也值得一读. 不过这事儿还是要靠实践, 对吧.

扩展一下, 还可以读读 Microservice Testing: Introduction, 提出要 Build a Testing Culture, 也蛮有道理的.

总之一句话, 不写测试的代码都是垃圾.

你可能感兴趣的:(笔记: Design for Testability)