【发布时间】:2016-11-14 05:13:43
【问题描述】:
我正在研究 TDD,最近正在寻找如何正确地对私有方法进行单元测试。 Stack Overflow 中的热门答案是:
根据评论区的分歧,似乎每个人都有自己的规则。然后我发现这个tutorial site 提出了一个相当大胆的方法。
- 制作
private方法protected或package private。将测试代码放在同一个包中。为可测试性而设计意味着设计您的代码,使其更易于测试。为此,您可能必须打破我们在大学中学到的一些原则,例如封装。
尽管 TDD 的原则是为可测试性设计代码,但为此打破封装对我来说并不合适。这种方法是个好方法吗?
【问题讨论】:
-
如果我必须选择,我会选择测试覆盖率而不是封装。
-
@Robert 但是既然每个私有方法都迫使我选择,那是不是意味着不再有私有方法了?
标签: unit-testing tdd