讨论 && 提问 关于单元测试
qhfu 2008-09-24 12:32:47 讨论: 关于 unit test.
问题如下:
1, 有多少人现在在项目中 会写 unit test? 为什么写? 觉得 unit tset带来好处了吗?
2, 大家在使用unit test的时候有什么心得体会, 或者经验?
3, 是否应该 为每一个 class 提供一个test 类,为每一个 publiic函数至少 提供一个测试, 还是可以只 考虑 接口类添加test class,只要 非接口类代码覆盖到了就可以了?
4, 是否应该为了 unit test 而在产品代码中 加入一些特殊的东西,比如只为测试用的代码?
5, 在使用 unit test过程中 有没有什么好的 方法或策略?
6, 任何 跟 unit test 、TDD、agile 等相关的 观点看法 都欢迎。
我 接触这一方面时间不是太久,经历过一些项目 ,也看了一些书, 总体感觉效果不是太好。
先说一下个人观点:
1, unit test 是不错的, 特别是在以后 修改bug 或者添加新功能的时候, 很容易得到反馈让coding 更加有信心,有利于代码重构,保持代码干净。
2, 容易促使 解开各种依赖, 为了能做unit test通常会把数据库,或者其他各种依赖封装起来,, mock出一个东西来,这样让代码的 耦合性降低,也是一个好处。
3, unit tset 会增加工作量,必须随代码修改而修改。
4, 有的时候为了 unit,在产品代码中 加入一些本来 可能不需要的代码。
5, 程序员有的非常不愿意写 unit tset case,质量低的 test case,会起副作用,test case 的质量也很难衡量。
可用分挺多的,分数可以再加,大家讨论一下 分享一下心得 谢谢!