我想使用 AWS Device Farm 运行 Android UIAutomator 测试。测试需要作为单独的 JAR 上传到 AWS。在 Android Studio (1.4) 中,UIAutomator 测试是应用项目本身的一部分,因此不会生成专用的 JAR。
如何生成仅包含 UIAutomator 测试并满足 AWS Device Farm 要求的 JAR?
我想使用 AWS Device Farm 运行 Android UIAutomator 测试。测试需要作为单独的 JAR 上传到 AWS。在 Android Studio (1.4) 中,UIAutomator 测试是应用项目本身的一部分,因此不会生成专用的 JAR。
如何生成仅包含 UIAutomator 测试并满足 AWS Device Farm 要求的 JAR?
您仍然可以使用 AWS Device Farm 执行这些测试,而无需将它们转换为 JAR。
2015 年 3 月 12 日,谷歌发布了 uiautomator 2.0。无需过多赘述,这个新版本的显着变化是这些测试基于 Android 工具(生成为 APK 文件),而不是之前使用的 uiautomator 1.0 系统(生成为 JAR 文件)。
我将不得不进一步检查 gradle/build 配置,但我的猜测是您正在使用新的 Android 测试库,因此使用 uiautomator 2.0。当您构建这样的项目时,它将生成两个 APK 文件,一个用于您的应用程序,另一个用于您的仪器测试。
使用 AWS Device Farm 时,您需要获取这两个 APK 文件并使用INSTRUMENTATION测试类型上传它们。此测试类型适用于所有基于 Instrumentation 的框架/工具,例如 Espresso、uiautomator 2.0 和 Robotium。UIAUTOMATOR测试类型专门用于旧的 uiautomator 1.0 项目,这些项目仍然为其测试包构建和使用 JAR 文件。