我很好奇,当人们在做TDD时,测试代码与生产代码之比的合理/典型值是多少?看一个组件,我有530行测试代码和130行生产代码。另一个组件具有1000行测试代码,可用于360行生产代码。因此,单元测试大约需要3到5倍的代码。这是针对Javascript代码的。我没有经过太多测试的C#代码,但是我认为对于另一个项目,我所看的测试代码是生产代码的2到3倍。
在我看来,假设测试足够,则该值越低,将反射(reflect)出更高质量的测试。纯粹是猜测,我只是想知道其他人看到了什么比例。
我知道代码行是一个宽松的指标,但是由于我为测试和生产使用相同样式的代码(相同的间距格式,相同的注释量等),因此它们的值是可比较的。
最佳答案
这实际上取决于因素的分解程度,但是根据我的经验(是的,我确实在某些项目中对此进行了衡量),我看到的比率是2:1到5:1(当然这是经过测试的代码)。还可以查看C2 Wiki上的ProductionCodeVsUnitTestsRatio和UnitTestToCodeRatio页面。
关于unit-testing - 与测试代码相比,单元测试的典型大小,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/2633860/