关于软件单元测试/TDD的成本和收益
作者:网络转载 发布时间:[ 2015/6/9 14:28:27 ] 推荐标签:测试驱动 单元测试
近我在公司搞代码评审,做的历程中发明一个抵触的问题:评审发明了问题,于是须要重构,可是重构须要有完美的单元测试做保证,而名目已靠近开发完结,基础没有单元测试,后果发明的问题只能放置,由于你很难下决计去为了完美一个货色而去冒损坏它的危险!
这样上来,代码评审将流于情势。
我意识到TDD与code review有着很周到的联络,其实以前据说过迅速的十二个实际都是有内在联络的。
于是,我又转而开端宣扬单元测试和TDD的必要性和益处,比方单元测试是好的文档、单元测试是主动化的回归测试能够掩护代码不被损坏、能够加强重构的自自信心、能够疾速反应进步开发效力……
但我的共事还是有几点担忧的问题:
1、写测试须要老本;
2、测试自身也能够出错;
3、测试也须要掩护,需求变了本来只有改一处,如今须要改两处了;
4、关于一些简朴的CRUD,真有必要去测吗?我鼠标点两下不行了?
总之是经过我的宣扬,他们已经基础认同了从久远看TDD是值得做的,但还是担忧短期内老本会增添以致影响了以落伍度。
不处理这个担忧,没方法让他们在目前工期压力下做这件事件。
所以这回探讨的焦点在短期老本和收益。
首先我以为,即使是短期看,也是值得去TDD的,这是我实际历程中的以为:
1、写测试须要老本
这个老本不大,而且能很快的发出,比方增添了debug和集成测试的时光;
2、测试自身也能够出错
测试出错解释你对顺序行动的预期错了,这属于需求了解问题,无法防止;
3、测试也须要掩护,需求变了本来只有改一处,如今须要改两处了
我以为这是个伪问题,由于假如你有测试套件的话,它实际上替代了以前的具体设计文档,并且改起来更随意;
4、关于一些简朴的CRUD,真有必要去测吗?我鼠标点两下不行了?
假如用了ORMapping框架,外面机关重重,因而CRUD也不简朴,而且查问素来都不会简朴,各种条件组合须要测的中央很多。
相关推荐
更新发布
功能测试和接口测试的区别
2023/3/23 14:23:39如何写好测试用例文档
2023/3/22 16:17:39常用的选择回归测试的方式有哪些?
2022/6/14 16:14:27测试流程中需要重点把关几个过程?
2021/10/18 15:37:44性能测试的七种方法
2021/9/17 15:19:29全链路压测优化思路
2021/9/14 15:42:25性能测试流程浅谈
2021/5/28 17:25:47常见的APP性能测试指标
2021/5/8 17:01:11