androidTest无法编译,显示无法解析符号

时间:2019-02-13 06:29:31

标签: android android-studio junit android-gradle android-testing

我正在尝试在我的android项目中使用Espresso添加检测测试。

除了添加 AndroidJUnitRunner 作为 testInstrumentationRunner

之外,我还添加了所有必需的库:
  

app -> build.gradle

但是由于某些原因,导入无法在仪器测试文件中进行:

  

androidTest file

但是本地测试文件可以正确导入:

  

local test file

我还添加了 junit 作为 androidTestImplementation ,但没有区别:

androidTestImplementation 'junit:junit:4.12'

这就是为什么我不能运行测试文件的原因。

如果我仍然运行文件,则会出现此错误:

Process finished with exit code 1
Class not found: "com.mcp.shippax.MainActivityEspressoTest"Empty test suite.

我不明白为什么设置如此简单和简单,为什么会发生这种情况(许多成绩同步/使缓存无效/重新启动)。

除了将大多数源文件(包括测试文件)转换为Kotlin之外,我不记得进行任何项目更改。但是后来我又将测试文件恢复为Java。

1 个答案:

答案 0 :(得分:0)

我有同样的问题。我在开发和生产环境中使用了多种构建类型,而对我有所帮助的是像在此答案https://stackoverflow.com/a/34778780/9736105中那样指定testBuildType。

是这样的:

android {

    ...

    testBuildType "<my-build-type>"

    buildTypes {
        <my-build-type> {
            ...  
        }
        ....
    }
}

这样做之后,将构建变体设置为该构建类型,便能够解决所有依赖项。