"No tests found" 用于 Lollipop 及更高版本的仪器测试

"No tests found" for instrumentation tests for Lollipop and above

我的基于仪器的(espresso)测试在 Lollipop+ 设备和模拟器上没有 运行。他们在任何其他平台上都正确 运行。我和这个帖子里的人有同样的症状 - https://groups.google.com/forum/?fromgroups#!topic/adt-dev/QW5SuzQizNk

我可以在带有 KitKat 的设备上很好地执行 ./gradlew connectedCheck 和测试 运行,但是当我尝试 运行 在带有 Lollipop 的设备上以相同的方式执行相同的测试时,我得到...

15:02:15.784 [警告] [org.gradle.api.Task] XT1095 上的测试 - 5.1 失败: 仪器 运行 由于 'java.lang.NoClassDefFoundError'

15:02:16.011 [警告] [org.gradle.api.Task] com.android.builder.testing.ConnectedDevice > 未找到测试。[XT1095 - 5.1] 失败

15:02:16.011 [警告] [org.gradle.api.Task] 未找到测试。这通常意味着您的测试 类 不是您的测试 运行 期望的形式(例如,不要继承自 TestCase 或缺少 @Test 注释)。

它终于开始工作了。我遵循了这个答案: https://groups.google.com/d/msg/adt-dev/QW5SuzQizNk/mWdaEuuCCQAJ 链接到: https://github.com/google/dagger/issues/271

基本上是这个问题:

我错误地使用了编译'com.google.dagger:dagger-compiler:2.0.2'

而不是正确的 适合'com.google.dagger:dagger-compiler:2.0.2'