使用 Mockito 模拟私有或最终方法/类
在进行测试时,模拟最终类或方法是一个常见的挑战。 Mockito 是一种流行的模拟框架,传统上在这方面面临着局限性。然而,随着 Mockito v2 的发布,这个障碍已经被克服。
要使用 Mockito v2 模拟最终类,请按照以下步骤操作:
包括Mockito v2 在Gradle:
testImplementation 'org.mockito:mockito-inline:2.13.0'
直接模拟类:
// Given FinalClass finalClass = mock(FinalClass.class);
注意,你不需要声明 @模拟注释,如旧版 Mockito 中那样
Mockito v1 的限制:
正如 Mockito 常见问题解答中提到的,Mockito v1 在模拟最终类时有限制。这是因为最终类无法在运行时动态生成,这是模拟的要求。
What are the limitations of Mockito ... Cannot mock final classes
以上是如何使用 Mockito 模拟 Final 类和方法?的详细内容。更多信息请关注PHP中文网其他相关文章!