我想使用Mockito进行单元测试,所以我将Mockito库添加到我的gradle依赖项中。
testImplementation 'junit:junit:4.12'
testCompile 'org.mockito:mockito-core:2.12.0'
但是,我仍然不能使用任何Mockito注释。
/androidTest/ExampleTest.kt
@RunWith(MockitoJUnitRunner::class) // Unresolved reference MockitoJUnitRunner
@Mock // Unresolved reference Mock
我错过了什么?
答案 0 :(得分:9)
您应该在build.gradle中使用以下代码:
dependencies {
// ... more entries
testCompile 'junit:junit:4.12'
// required if you want to use Mockito for unit tests
testImplementation 'org.mockito:mockito-core:2.24.5'
// required if you want to use Mockito for Android tests
androidTestImplementation 'org.mockito:mockito-android:2.24.5'
}
然后点击同步
答案 1 :(得分:3)
您可能需要另一个依赖项:
<div class="row">
<app-grid [data]="list" [columns]="columns"></app-grid>
</div>
或者,您可以尝试手动导入注释:
androidTestCompile 'org.mockito:mockito-android:2.12.0'
可能是它没有正确导入,这就是为什么它显示为未解析的参考。自动导入有其缺陷
答案 2 :(得分:0)
我遇到了与assembleDebugAndroidTest
有关的objenesis
问题。因此,根据Shylendra的回答,您可能需要替换
androidTestImplementation 'org.mockito:mockito-android:2.24.5'
使用
androidTestImplementation("org.mockito:mockito-core:2.8.47")
答案 3 :(得分:0)
在Mockito上非常舒适的库:
testImplementation 'org.mockito:mockito-inline:2.21.0'
testImplementation('com.nhaarman.mockitokotlin2:mockito-kotlin:2.2.0') {
exclude group: 'org.jetbrains.kotlin'
exclude group: 'org.mockito'
}
// Also works like a charm with instrumentation tests
androidTestImplementation 'org.mockito:mockito-android:3.5.13'
androidTestImplementation('com.nhaarman.mockitokotlin2:mockito-kotlin:2.2.0') {
exclude group: 'org.jetbrains.kotlin'
exclude group: 'org.mockito'
}