好想法抵挡不住现实的打击,代码库随着项目的进展越发复杂,由于没有测试的保护,一些不良的设计偷偷溜了进来,代码越发娇气,慢慢地没有人敢去动它。最糟糕的结果可能是,DEVs顶着巨大交付压力,唯唯诺诺的写着代码,而灾难正在酝酿,交付最终失败。
所以只有当测试代码并行于产品代码,甚至可以采用TDD。测试的几大价值才有可能被体现出来,从而能够为我们的产品保驾护航。
另外,如果是因为不熟练而导致编写测试的时间太长,不妨记录一下自己每天花在定位问题和调试上的时间,做个对比,你会发现编写单元测试最终是会为你节省时间的。
就我个人经验,半TDD的编码方式,在一个Story上所花的总时间不会多余没有测试裸奔的代码。或许刚开始会觉得有点拖慢节奏,操练多了,它的威力就会彰显出来了。
测试也写了,可是运行时间太长了又带来了另一个苦恼?
细谈该苦恼可以单独写一篇文章了。我的确见过测试运行时间很长,每次验证一次跑上半个多小时。下面列举一些测试加速的实践: