1.2.6 了解何时不进行自动化测试

当我开始编写自动化测试时,曾想要测试所有的东西。因为我亲身经历了未经测试的应用程序带来的痛苦。我不想再体验同样的经历,但很快我又学到了另一课——测试会减缓开发速度。

在编写测试时,请务必牢记编写测试的目的。通常,测试的目的是为了节省时间。如果你正在进行的项目是稳定的并且会长期开发,那么测试是可以带来收益的。

但是如果测试编写与维护的时间长于它们可以节省的时间,那么你根本不应该编写测试。当然,在编写代码之前你很难知道通过测试可以节省多少时间,你会随着时间的推移去了解。但是,假设你正在一个短期项目中创建原型,或者是在一个创业公司迭代一个想法,那你可能不会从编写测试中获得受益。

即使项目受益于测试,可能也不需要那么多测试。让我来告诉你关于100%代码覆盖率的谬误吧。