tdd的粒度

发现这个问题目前还处于空白状态,搜了很久没看见讨论。希望管理员不要把它移到问答区,大家发帖子或多或少都会有些疑问,没疑问的帖子还会有讨论价值吗。 进入正题。一个系统的功能结构都是树形的,底层的最简单,越往上就越复杂,因为它对底层功能的集成越来越多。刚开始时的测试都是针对底层编写的,这很轻松,基本上没问题;可当需要编写高层功能时,问题就来了:要不要写测试? 1、写。这就是每一层都写测试,层级越多就意味着底层的代码重复测试的次数也越多,tdd强调频繁运行测试,这不是很浪费时间?这还不够严重,假如该层集成的某些功能不是自己写的,无法保证其可靠性,这又该如何?其实问题可以总结为:我希望“A依赖于B,但A的测试只会因为A的问题而出现问题,跟B无干”。结论是,层级越高的功能,测试越难编写,越受限制。 2、不写。只针对所有的底层代码编写testCase。那高层的代码怎么办,连testCase都没有可靠性从何谈起? 从个人的实践来看,这个问题很实际。

相关文章

迭代器模式(Iterator)迭代器模式(Iterator)[Cursor]意图...
高性能IO模型浅析服务器端编程经常需要构造高性能的IO模型,...
策略模式(Strategy)策略模式(Strategy)[Policy]意图:定...
访问者模式(Visitor)访问者模式(Visitor)意图:表示一个...
命令模式(Command)命令模式(Command)[Action/Transactio...
生成器模式(Builder)生成器模式(Builder)意图:将一个对...