我知道这个问题被问了很多时间,但是我遵循了很多答案,但仍然没有用
How to mock a final class with mockito
在这个链接中,他们说我们必须添加我们的 gradle :
testImplementation 'org.mockito:mockito-inline:2.13.0'
=> 目前我有
testImplementation "org.mockito:mockito-inline:2.28.2"
我的 MockMaker 文件中也有这一行:
mock-maker-inline
然后你可以看到我的以下代码:
object ApiHelper {
fun <T> createService(
url: String,
clazz: Class<T>
): T
}
在我的 UITEST
@Mock
private lateinit var service: myService
private lateinit var apiHelper: ApiHelper
@Before
fun setUp() {
apiHelper = mock(ApiHelper::class.java)
given(ApiHelper.createService(
anyString(),
MyService::class.java,
)).willReturn(service)
}
我的代码有什么问题?我错过了什么吗?
最佳答案
mocking library for Kotlin http://mockk.io
我之前也用过mockito,写的时候问题很多。
相反,mock 功能强大,它使您的测试更容易编写和
object mocks只适合你的情况
关于android - Mockito 无法模拟/监视,因为 : Final Class,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/59577137/