【发布时间】:2021-08-15 04:54:18
【问题描述】:
我最近安装了 Android Studio Arctic Fox v2020.3.1 Beta 2,以便能够在我们的项目中使用 Jetpack Compose,因为我无法在 AS 4.2.1 上这样做,因为 Compose 正在抛出strange build error that got fixed on Arctic Fox。
所以这就是问题所在,在加载项目后,更新一些 SDK/库我能够构建和运行没有问题,但是,当我去运行单元测试时,我注意到所有测试类不再被IDE。经过一番调查,我发现newer versions of AS will no longer recognize JUnit configurations。
正如您在下面的屏幕截图中看到的那样,无法像往常一样运行这些测试:
这个来自Run/Debug Configurations,其中JUnit 测试属于未知类别:
最后,我确实创建了一个 gradle 配置来测试,但它只是在左侧说:
未收到测试事件
并在右侧抛出错误:
任务“features:signup:testDevDebugUnitTest”执行失败。 没有找到给定的测试包括:com.projectsaturn.android.features:signup.SignupViewModelTest
我想知道是否有人遇到过这个问题并能够解决?
感谢任何帮助!
更新 01:
所以我决定回滚一切,从头开始。这次我只更新了一些东西:
-
Gradle:
com.android.tools.build:gradle:7.0.0-beta02 -
科特林:
org.jetbrains.kotlin:kotlin-stdlib-jdk8:1.4.32 -
Crashlytics:
com.google.firebase:firebase-crashlytics-gradle:2.6.1 -
测试(核心、运行器和规则):
androidx.test:core/runner/rules:1.3.0
现在的问题是,当我通过 Gradle 运行它时,所有单元测试都失败了。我怀疑它在运行实际测试函数之前没有运行 @Before 注释函数。或者我没有正确设置 Gradle 测试(截图如下)?
【问题讨论】:
-
我执行了您在顶部链接的 Android Studio 文档中的说明(对于“Android Studio 现在使用 Gradle 测试运行程序”),它看起来对我来说效果很好。使用 AS 北极狐 beta05 和 jUnit 5.7.2。
-
北极狐发布了,我昨天更新了,面临同样的未收到事件的问题。有什么对你有用的吗?
-
随着北极狐的发布,得到不同的结果,有时测试用例通过,有时我得到“没有收到任何事件”。信息。而且覆盖率测试也不起作用
-
同样的问题,使用 gradle runner 运行测试,但
@BeforeEach被完全忽略。 -
遇到同样的问题。下面的答案不能解决我的
Test events were not received。
标签: android android-studio unit-testing gradle junit