1
11
“为每个实现类分别测试每个方法” 特别是,未能正确重写超类方法是一个常见的错误。子类的作者对超类进行假设。超类改变了,子类现在被破坏了。 |
2
7
如果这意味着您将为每个测试子类重复运行相同的测试,那么我绝对不会执行备选方案1(让测试类层次结构与实际的类层次结构相同)。除了通用实用程序基类之外,我还对测试类的子类化持怀疑态度。 我通常对层次结构中的每个类进行一次测试,不管是否抽象。因此,基类有一个单独的测试(通常带有一个专门用于测试它的测试本地私有子类),我使用我对子类的知识为每个子类编写适当的测试。我可以在覆盖率运行中看到缺少的测试,所以我通常不会预先太正式化。 |
3
4
单元测试当然可以走到极端——从中获得的价值与付出的努力之间的平衡总是值得的。 |
4
1
使用TDD,您不应该以测试方法为目标,而应该以测试代码的行为或功能为目标。因此,在实现子类时,您可以限制只测试与基类不同的行为。当有疑问时,写一个新的测试。 |
S4beR · jest-手表模式错误 7 年前 |
M.C · 如何从Ruby TDD哈希数组中返回名称 7 年前 |
Maverick94 · Python unitest不工作 7 年前 |
erexo · Moq模拟。Of<Obj>vs new Obj(); 7 年前 |
jpuriol · JUnit测试中的“单例” 7 年前 |
Py.Jordan · 如何在Python中模拟用户输入 7 年前 |