java - 无法在某些构建类型上运行自动化 Android 测试? JUnit 和 UiAutomator 导入无法解析

标签 java android-studio intellij-idea

我正在尝试在工作中构建一些自动化测试来测试我们拥有的一组 Android 应用程序。我喜欢构建应用程序和运行自动化测试(因为 UiAutomator 需要 minApi 18 或更高版本,但我们希望支持手机回到 Api 15)。我们还有用于开发、发布、登台和调试的构建类型。

我可以在每种构建类型的任何应用程序上运行 AppBuilder 风格,没有问题。但是,当我尝试运行自动化测试时,我只能在应用程序的调试版本上运行它们,并且我也需要能够在其他类型上运行它们。

我尝试将它们作为 JUnit 测试运行,但它们产生错误“空测试套件”。我也将它们作为 Android Instrumented Tests 运行,但它们不会运行,因为他们说该类不是测试类。

此外,当我构建自动化类时,我的大部分导入都会变成红色并显示“无法解析符号”错误(主要是我的 junit 导入和 uiautomator 导入)。

我已经寻找了好几天可能的解决方案,但还没有找到任何解决方案。我的 build.gradle 依赖项中有 "testImplementation 'junit:junit:4.12'""androidTestImplementation 'junit:junit:4.12'",我尝试过使缓存无效并重新启动,并且尝试清除所有配置并将它们放回原处(但可能做得不正确),但这些都不起作用。

如有任何帮助,我们将不胜感激!

最佳答案

我终于偶然发现了这篇文章,它有一个似乎有效的答案: Cannot resolve symbol 'AndroidJUnit4'

我只是输入了 testBuildType "develop"testBuildType "staging" 以允许我的自动化测试在应用程序的开发和登台类型上运行

关于java - 无法在某些构建类型上运行自动化 Android 测试? JUnit 和 UiAutomator 导入无法解析,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/53770169/

相关文章:

java - 安卓 - "The method add(int, Fragment)..."

java - 如何使用 apache poi 读取 xlsx 类型的 Excel 文件的单元格内容?

android - Gradle 同步时此 normalizeAndCheck(UnixPath.java) NullPointerException 的修复方法是什么?

android - 无法在android studio中运行flutter项目

scala - 在IDEA的Maven项目中升级Scala版本

java - 如何在 Java Websocket 客户端中添加 header

java - 更改 Activity 时按钮不起作用

Android Studio 无法启动应用程序

javascript - Intellij 找不到 .js 文件(类搜索)

java - 在 IntelliJ 中调试 Web 容器