1. 如果连代码的行为都不清楚,写出来的代码意义何在?
2. 通过编译就代表能正常工作吗?
3. 你可以不写测试,但你写的代码不断被QA找出Defect,作为DEV名声信誉何在,难道写出可靠的代码也不是你的职责吗?
4. 公司的确不是雇你来写测试的,那公司是顾你来调试bug的吗?
5. 试问QA会喜欢一个交付的代码存在很多Defect的DEV吗?我想QA也宁愿代码可靠到让他ta"无事可做",从而去做一些功能测试、性能测试、验收测试等。
让我觉得值得一提的是常规派的看法:
1. 编写单元测试太花时间了,项目结束时再说吧!
2. 运行测试时间太长了!
“编写单元测试太花时间了,等测试结束后再说” 听起来是一个很合乎情理的想法。而在软件开发项目上存在一个这样的魔咒:
一推再推的事情,往往都是不会去做的事情。
不去做的原因可能是重视度不够,被和谐掉了,也可能是最后想去做也没有时间去做。不管出于什么原因,不写测试存在潜在的风险。
实践证明,随着时间推移,产品的功能性的变化趋势受测试代码编写的时机的影响如下图所示:
原文转自:http://sjyuan.cc/unit-test-view-from-a-programmer/