Ely*_*lye 2 android unit-testing kotlin dagger-2
当我们使用Dagger和Kotlin时,我们需要在build.gradle依赖项中使用以下内容
kapt 'com.google.dagger:dagger-compiler:2.0'
compile 'com.google.dagger:dagger:2.0'
provided 'org.glassfish:javax.annotation:10.0-b28'
Run Code Online (Sandbox Code Playgroud)
如http://www.beyondtechnicallycorrect.com/2015/12/30/android-kotlin-dagger/中所述
当我尝试使用Dagger执行测试时,DaggerTestComponent.builder()根据https://labs.ribot.co.uk/fast-and-reliable-ui-tests-on-android-17c261b8220c#.o3efc5knx甚至https://生成测试以Kotlin语言编写的medium.com/@fabioCollini/android-testing-using-dagger-2-mockito-and-a-custom-junit-rule-c8487ed01b56#.hxtytfns3,但有以下错误
Error:(14, 25) Unresolved reference: DaggerTestComponent
Run Code Online (Sandbox Code Playgroud)
我发现/sf/answers/2536206151/解释如何得到DaggerTestComponent产生,并尝试把下面我依赖.
androidTestApt 'com.google.dagger:dagger-compiler:2.0.1'
Run Code Online (Sandbox Code Playgroud)
显然,我认为这是针对Java而不是Kotlin,因此问题仍然存在.它有Kotlin版本吗?如何DaggerTestComponent在我的Kotlin项目中获得我的生成?
Ely*_*lye 11
从Kotlin Slack Channel找到答案.感谢Kirill Rakhman.
它是(用于仪器测试)
kaptAndroidTest 'com.google.dagger:dagger-compiler:2.0.2'
Run Code Online (Sandbox Code Playgroud)
或(用于单元测试)
kaptTest 'com.google.dagger:dagger-compiler:2.0.2'
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
1108 次 |
| 最近记录: |