单元测试 – 为什么功能测试不够用?单元测试提供什么?

我只是和我的主要开发人员进行了交谈,他不同意单元测试是必要或重要的.在他看来,具有足够高的代码覆盖率的功能测试应该是足够的,因为任何内部重构(接口更改等)都不会导致测试需要重写或再次查看.

我尝试解释,但没有得到很远,认为你们可以做得更好. ;-)所以…

功能测试不提供的单元测试代码有什么好的原因?如果你所有的功能测试都有什么危险?

编辑#1感谢所有伟大的答案.我想补充说,通过功能测试,我并不意味着只对整个产品进行测试,而是对产品中的模块进行测试,而不是在必要时嘲笑单元测试的低级别等.还要注意,我们的功能测试是自动的,并且是持续运行的,但它们只需要比单元测试更长的时间(这是单元测试的一大优点).

我喜欢砖对房子的例子.我想我的主要开发商所说的是测试房子的墙壁就够了,你不需要测试个别的砖块…–)

离开我的头顶

单位测试无需重复.写一次,运行数千次,不需要人力需求,并且比从功能测试中得到的反馈快得多>单元测试测试小单位,所以立即指出出现错误的正确“扇区”.功能测试指出错误,但它们可能由大量模块引起,即使在合作中.>我几乎不会调用界面改变“内部重构”.界面变化往往会打破很多代码,(在我看来)强制一个新的测试循环而不是一个.

相关文章

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