【问题标题】:Android Studio - Kotlin Tests Throwing - Class not found - Empty test suiteAndroid Studio - Kotlin 测试抛出 - 找不到类 - 空测试套件
【发布时间】:2018-04-04 16:29:40
【问题描述】:

当尝试在 Android Studio 上运行用 Kotlin 编写的 espresso 测试时(就 3.2 Canary 9 而言),我遇到了错误: 进程以退出代码 1 结束 找不到类:“com.myproject.directoryofwinning.VerifyAppIsAwesomeTest”空测试套件。

奇怪的是,同一个项目中的 Java 测试没有问题。

已尝试重置配置并建议其他人,但这似乎没有任何区别。

【问题讨论】:

  • 就我而言,我只是忘记将此行添加到 build.gradle:apply plugin: 'kotlin-android'

标签: android android-studio kotlin android-espresso


【解决方案1】:

最后我发现它归结为“测试”被添加到类名的末尾。将单词 Test 移到类名的前面,或者一起省略它可以解决问题。

【讨论】:

  • 不是答案。删除所有旧配置并重新启动模拟器为我修复了它。来源:github.com/pot8os/Kotlin-Espresso-sample/issues/…
  • 同样的事情。重命名测试将导致生成一个新的(每个测试)构建配置。如果 IDE 无法更新现有的构建配置,删除它也应该有效。无论如何 +1 作为它的另一个有效解决方案。
【解决方案2】:

在我使用 Android Studio 3.1.1 的情况下,我的运行/调试配置不正确,可能是由于更新 Android Studio 时配置的自动转换。 我的插桩测试配置最终被放置在“Android JUnit”配置下,而不是“Android 插桩测试”下。为我的特定类创建新的插桩测试配置是可行的。

此外,右键单击我的模块的“运行所有测试”选项时创建的默认配置无法找到我的检测测试并正常运行,导致

0 test classes found in package '<default package>' 
Process finished with exit code 254 
Empty test suite.

因为在 Android JUnit 下弹出的默认配置。但是,右键单击包含我的检测测试的包会在正确的类别中创建它。我也可以手动将其编辑为“All in Module”,并且仍然可以正确执行我的 kotlin 测试。

顺便说一句,我之前也让 IDE 给了我以下误导性输出:

$ adb shell am instrument -w -r   -e package com.base.package.kotlintests -e debug false com.base.package.test/android.support.test.runner.AndroidJUnitRunner
Client not ready yet..
Started running tests
Tests ran to completion.
Empty test suite.

为什么它说有一个空的测试套件为什么我明明有测试?查看日志或在终端上运行adb 命令显示我的代码在我的@BeforeClass 设置中引发了异常!所以没有执行任何测试,一切都顺利完成。

【讨论】:

    【解决方案3】:

    我花了几次尝试才弄明白,但最终是由于错过了启用 kotlin 所需的 gradle 更改。

    ....
    apply plugin: 'kotlin-android'
    android {
        ....
    }
    dependencies {
        implementation "org.jetbrains.kotlin:kotlin-stdlib:1.3.21"
        ....
    }
    

    【讨论】:

      【解决方案4】:

      重建项目,文件 > 使缓存无效/重新启动...,删除 app\build 文件夹,从进程中杀死 adb,重新启动模拟器。

      【讨论】:

        猜你喜欢
        • 1970-01-01
        • 2016-10-29
        • 2018-06-06
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        相关资源
        最近更新 更多