预期在Android Studio 4.1上使用JUnit版本3.8或更高版本

问题描述

我已将Android Studio更新至4.1,并且在运行JUnit时得到的错误信息是错误

 !!! JUnit version 3.8 or later expected:

java.lang.RuntimeException: Stub!
    at junit.runner.BaseTestRunner.<init>(BaseTestRunner.java:14)
    at junit.textui.TestRunner.<init>(TestRunner.java:54)
    at junit.textui.TestRunner.<init>(TestRunner.java:48)
    at junit.textui.TestRunner.<init>(TestRunner.java:41)
    at com.intellij.rt.junit.JUnitStarter.junitVersionChecks(JUnitStarter.java:212)
    at com.intellij.rt.junit.JUnitStarter.canWorkWithJUnitVersion(JUnitStarter.java:195)
    at com.intellij.rt.junit.JUnitStarter.main(JUnitStarter.java:49)

下面是我的配置

JUnit Version: 4.12

Mockito Version: 3.5.11

powermockito Version: 2.0.7

Espresso Version: 3.3.0

Gradle Plugin version: 4.0.2 and 4.1.0

Gradle Version: 6.1.1 and 6.5

当我降级到4.0.2时,效果很好

请告诉我我在想什么。

解决方法

升级到AS 4.1时遇到相同的问题

我通过从build.gradle (app)文件中删除以下内容来解决了此问题

useLibrary 'android.test.runner'

所有测试均已完成

,

我昨天更新了Ubuntu 20.04 LTS之后遇到了这个问题,我从sanp store安装了android studio。最终设法暂时解决了问题,如果您使用的是Linux,则必须找到android studio的安装目录,并在bin目录中,然后使用sudo运行studio.sh,看来这是一个权限问题

sudo ./android-studioInstalledDirectory/bin/studio.sh
,

当我将Android Studio升级到4.1时,我也遇到了这个问题。我没有删除useLibrary行,而是删除了升级前显式引入JUnit版本的testImplementation行。