Ide*_*ity 2 c# unit-testing code-coverage
我正在努力实现 100% 的代码覆盖率。然而,不知何故,代码覆盖率抱怨某些未覆盖的 MoveNext() 方法,但是,没有迭代 IEnumerable 的代码路径...
关于如何覆盖 MoveNext 方法有什么想法吗?MoveNext() 位于哪里?
老实说,我是根据尝试为具有平均规模团队的中型项目实现并维护 100% 代码覆盖率的经验而说的,其中代码相当好地遵循 SOLID 原则,您应该忘记尝试实现 100% 代码覆盖率。
最佳实践表明,覆盖率 70% 的系统相当不错,覆盖率 80% 非常好,覆盖率 90% 的系统非常好,这是有充分理由的。听起来您已经九十多岁了,所以您感到自豪,并且不必过度担心最后的部分,从听起来来看,它甚至没有测试您的代码库本身。或者换句话说,您愿意实现 100% 的圣杯,还是花时间重构代码以使将来的维护更容易?
当我尝试保持 100% 覆盖率时,我对 C# 还很陌生,最终编写了单元测试来测试 .Net 框架的 getter 和 setter - 我认为我真的很聪明,达到了 100%(整整一周,直到团队中有人添加了几行超级简单的代码),然后有人礼貌地指出我的一些测试的愚蠢之处 - 我觉得自己真是个傻瓜。
我意识到我的“答案”实际上并没有回答你的问题,我开始这个回应作为评论,而不是答案,但当我写作时,我意识到我的评论是如此相关,即使没有直接回答问题评论是一个不充分的解释。我真的很钦佩任何 100% 覆盖率的尝试,但不要沉迷于实现它 - “完成比完美更好”。
不过祝你好运!
| 归档时间: |
|
| 查看次数: |
2705 次 |
| 最近记录: |