我试图模拟一个对象,但是android不断报告说,最后一个类不能被模仿。我的设置和尝试如下;
为我的后遗症;
androidTestImplementation 'org.mockito:mockito-core:3.3.3'我的代码是这样的;
class CategoryFile {
private lateinit var categories: Categories
@Before
fun setup() {
categories = mock(Categories::class.java)
}
@Test
fun validData() {
categories.getName(0)
}
}当我尝试运行validData()时,我会得到final class cannot be mocked异常。
我试过在这个目录中使用mock-maker-inline选项;

我读到,一旦实现了程序方式,这个选项就会被删除。但是还没有找到任何关于如何在任何地方进行在线编程的参考资料。
我也在一些这样的帖子中读到,你也应该把它包括在你的课堂路径中,但是我不知道如何做到这一点。
我还尝试使用另一个mockito库com.nhaarman.mockitokotlin2.mock,它也一直告诉我final class cannot be mocked。
我还在这些过程的多个阶段进行了多个项目重建,以防万一。
发布于 2020-07-15 13:56:24
因为您使用的是androidTestImplementation,所以一定要将相关的文件和扩展名添加到androidTest文件夹中,而不是普通的test
https://stackoverflow.com/questions/62902792
复制相似问题