我一直在浏览 Volley
的源代码,发现对于每个类或接口(interface)都有一个测试实现。
是否为每个其他类编写 Test
类比使用 Mockito
仅模拟对象更可取?
最佳答案
一个广泛的问题,但让我们收集基本事实:
- 编写自己的自定义测试“ stub ”使您能够实现“测试支持”的“自己”愿景
- 尤其是,您对模拟框架没有任何依赖性
换句话说:您决定在某种程度上重新发明轮子。这可以防止您遇到其他人放下的错误,从而冒犯自己错误的风险。
从这个意义上说,这可以归结为“自己购买或自己制造”的旧讨论。
在谈论测试用例时,有许多专家建议不要依赖模拟框架。所以这是一种常见的做法,但我认为是“少数”。
我个人的两分钱:理想情况下,您应该编写可以在没有任何模拟框架的情况下进行测试的生产代码。但这并不总是可能的。对于这些情况,您的工具箱中有一个 模拟框架。您知道如何以合理的方式使用它来完成测试。我会发现手动完成所有测试 stub 太麻烦了。大量的努力换取相对较小的 yield 。
关于android - Mockito vs 类的测试实现,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/44231834/