作者comate ()
看板Soft_Job
标题Re: [请益] 请问有公司使用 TDD 或 Unit Testing 吗?
时间Wed Feb 13 00:22:37 2008
※ 引述《HalfLucifer (部游读动)》之铭言:
: 请问有没有国内的软体公司,
: 是真正使用 Test Driven Development 程序来开发软体,
: 或是使用 NUnit 或 CppUnit 之类的 Framework 来进行 Unit Testing?
: 最近对 TDD 的方法很感兴趣,
: 虽然对於写程式这件事来说,TDD 好像变得有点麻烦而且违反直觉,
: 但是在看了一些书籍和文章之後,觉得 TDD 应该是个非常好的软体开发方法。
: 国外有看到一些推广的例子,
: 但是我很好奇,在国内的公司有没有真正应用 TDD 在专案上的例子?
: 有没有公司是真的按照 TDD 的程序在写软体的?
: 有严格要求 Commit 之前的 Code 要先经过 Test Suite 测试吗?
: 如果使用这种方法,会不会有什麽 pitfall 或是书本理论里没有提及的缺点?
缺点就是同样的人力和时间所产出的 throughput 可能会小的多
不过这有点 case by case
在专案开发初期 尤其是越大型的 project
其实不适合花太多时间在测试和写测试程式
但是了解其精神却是必要的!
让开发人员在一开始就养成良好习惯可减少中後期的 debug 时间
至於到了开发中後期 可以许多辅助工具来完成这方面的需求
目前已经有一些专为 unit test, boundary, code coverage 等进行测试的工具
(但都是商业软体)
像是 ParaSoft C++ test, klocwork, AutomatedQA TestComplete
善用工具可减少开发人员花费大量时间去写 test case
以时间/薪水来换算绝对是比较划算的
当然一些 domain 相关的部份是无法以这些 generic 的 tool 进行测试
不过至少对於 source code 的品质能达到一定程度的把关
--
※ 发信站: 批踢踢实业坊(ptt.cc)
◆ From: 220.134.96.131
1F:推 iincho:嗯.source code inspection tool和test case是不同范畴 02/13 00:31
2F:→ iincho:的东西. 这样比有点奇怪..... 02/13 00:32
3F:→ iincho:还是说ParaSoft C++这一类的软体已经能帮忙处理这部分了呢? 02/13 00:33
4F:推 HalfLucifer:感谢您的回覆 :) 02/14 21:15