Skip to content

测试能力

Jugg 支持在保留增量编译与部署能力的同时运行 Android instrumentation test。用户可以从 app 的 androidTest、library 的 self-targeting androidTest、测试结果树和方法级 logcat 四个角度判断当前能力是否适用。

能力入口

用户场景当前支持情况入口
运行 app 模块的 instrumentation test支持Application Android Test
运行 library 模块的 self-targeting instrumentation test支持Library Android Test
在 Run 窗口查看测试树、失败节点和重跑失败用例支持Test Results UI
把 logcat 归到具体测试方法支持Logcat 归因

IMPORTANT

第一次进入 Android Test 模式前,需要在 Jugg App Run Configuration 中开启 Android Test,并完成一次 Android Test 目标的 Gradle full build。这样 Jugg 才能拿到 app APK、test APK、runner 和测试模块信息。

测试运行如何生效

text
选择测试入口
  -> Android Test RunSpec 记录 sourcePath、class 或 method
  -> BuildTarget 切到 ANDROID_TEST
  -> 编译 app 与 androidTest 产物
  -> 按 APK 归属部署 app APK / test APK
  -> 部署成功后执行 am instrument
  -> Run 窗口展示测试树、失败信息和方法级 logcat

Application Android Test 是最常见入口,适合 app 模块的 src/androidTestLibrary Android Test 处理有独立 self-targeting Test APK 的 library 场景,重点是补齐和安装正确的 Test APK。两类测试最终都通过 instrumentation 运行,并共享 Test Results UI 与 logcat 归因能力。

当前边界

场景当前口径
app 源码变更支持进入 Android Test 增量编译与部署
app/src/androidTest 源码变更支持进入 Android Test 增量编译与部署
library self-targeting src/androidTest 源码变更支持,必要时补齐 Test APK
androidTest resource 增量编译暂不覆盖
androidTestAnnotationProcessor / androidTestKapt暂不覆盖
Debug Executor暂不覆盖

关联能力