TDD所带来的好处是否被过度的夸大?
2011-06-29 13:52
330 查看
当需要进行测试时,我信守下面的经验主义的做法:
“先测试”还是“后测试”并不重要,只要你是在测试。
在你的开发过程中尽可能早的考虑测试。
不要让某个框框限制了你的行动。例如,不要轻信那些人告诉你的、要写出“尽可能简单的能够运行的程序”—也就是所谓的YAGNI—的话。如果你的经验告诉你,未来你会用到这个额外的类—虽然现在用不着,你应该相信你的判断,加上这个类。
记住,功能测试是真正对用户有意义的测试。单元测试只是为你—开发者—服务的。属于奢侈品。如果你有时间去写单元测试,那最好了:当你的程序出现问题时,它们能帮助你省去很多时间。但如果你没有时间,你要确保功能测试能覆盖到你的产品里用户所期望的所有功能点。
如果你没有做驱动测试开发,不要有任何的不安。有太多的因素都能导致这种开发方法在众多的项目和个人开发习惯中水土不服(有很多因素那些TDD极端主义者们永远都不会提)。
“先测试”还是“后测试”并不重要,只要你是在测试。
在你的开发过程中尽可能早的考虑测试。
不要让某个框框限制了你的行动。例如,不要轻信那些人告诉你的、要写出“尽可能简单的能够运行的程序”—也就是所谓的YAGNI—的话。如果你的经验告诉你,未来你会用到这个额外的类—虽然现在用不着,你应该相信你的判断,加上这个类。
记住,功能测试是真正对用户有意义的测试。单元测试只是为你—开发者—服务的。属于奢侈品。如果你有时间去写单元测试,那最好了:当你的程序出现问题时,它们能帮助你省去很多时间。但如果你没有时间,你要确保功能测试能覆盖到你的产品里用户所期望的所有功能点。
如果你没有做驱动测试开发,不要有任何的不安。有太多的因素都能导致这种开发方法在众多的项目和个人开发习惯中水土不服(有很多因素那些TDD极端主义者们永远都不会提)。
相关文章推荐
- TDD好处在哪?是否与自动测试好处混淆
- 职业与生活规划是否必要?回答因人而异。但规划至少会给人带来以下好处。
- KO工作原理及带来的好处
- WEB页面工具语言XML带来的好处
- 逆向工程是什么, 为什么要逆向工程, 能为我们带来什么好处?
- 新图形API为unity5 带来了什么&下一代新图形API的好处
- Java并发:并发编程带来的好处和风险
- 论大数据带来的好处
- C/C++中判断两个变量是否相等,相减是否为0、大于0或小于0时要特别注意机器误差带来的影响!
- IOC给程序带来的好处
- 你的项目框架是否被过度设计了?
- 信息化给企业带来的好处
- IOC给编程带来的好处
- 单页web应用是什么?它又会给传统网站带来哪些好处?
- 网络营销给企业带来的好处
- 类的静态成员函数带来了什么好处,应该在什么时候使用?
- 新图形API为unity5 带来了什么&下一代新图形API的好处
- 科技和互联网教育带来的好处就是尽可能给学生带去机会,带来公平
- Android签名有什么作用-apk签名可以带来的好处
- 使用Apache+tomcat比单独使用tomcat能带来什么样的好处及坏处