Firebase 测试实验室:ClassNotFoundException:未找到 class "android.support.test.runner.AndroidJUnitRunner"
Firebase Test Lab: ClassNotFoundException: Didn't find class "android.support.test.runner.AndroidJUnitRunner"
从命令行执行时测试通过,但在 Firebase 测试实验室中未通过。
FATAL EXCEPTION: main
Process: io.app, PID: 8460
java.lang.RuntimeException: Unable to instantiate instrumentation ComponentInfo{io.app.test/android.support.test.runner.AndroidJUnitRunner}:
java.lang.ClassNotFoundException: Didn't find class "android.support.test.runner.AndroidJUnitRunner" on path: DexPathList[[zip file "/system/framework/android.test.runner.jar", zip file "/system/framework/org.apache.http.legacy.boot.jar", zip file "/system/framework/android.test.mock.jar", zip file "/data/app/io.app.test-Lhy59NcEDyw4_BcWTLMjQw==/base.apk", zip file "/data/app/io.app-Pxsp6qUCO3AXUr6rsMhX1A==/base.apk"],nativeLibraryDirectories=[/system/lib, /system/vendor/lib]]
将错误的 androidTest APK 上传到 Firebase 测试实验室时会发生这种情况。使用 Android Studio 分析您正在上传的 APK,并检查 classes.dex(或 类{i}.dex)是否有您的测试。
您的测试 APK 可能在不同的目录中:在不同模块的 build/
文件夹中。
清单文件中指定的测试运行器必须存在于 test APK 中(作为 --test 参数传递给 gcloud 或上传到 FTL 网络控制台)。
从命令行执行时测试通过,但在 Firebase 测试实验室中未通过。
FATAL EXCEPTION: main
Process: io.app, PID: 8460
java.lang.RuntimeException: Unable to instantiate instrumentation ComponentInfo{io.app.test/android.support.test.runner.AndroidJUnitRunner}:
java.lang.ClassNotFoundException: Didn't find class "android.support.test.runner.AndroidJUnitRunner" on path: DexPathList[[zip file "/system/framework/android.test.runner.jar", zip file "/system/framework/org.apache.http.legacy.boot.jar", zip file "/system/framework/android.test.mock.jar", zip file "/data/app/io.app.test-Lhy59NcEDyw4_BcWTLMjQw==/base.apk", zip file "/data/app/io.app-Pxsp6qUCO3AXUr6rsMhX1A==/base.apk"],nativeLibraryDirectories=[/system/lib, /system/vendor/lib]]
将错误的 androidTest APK 上传到 Firebase 测试实验室时会发生这种情况。使用 Android Studio 分析您正在上传的 APK,并检查 classes.dex(或 类{i}.dex)是否有您的测试。
您的测试 APK 可能在不同的目录中:在不同模块的 build/
文件夹中。
清单文件中指定的测试运行器必须存在于 test APK 中(作为 --test 参数传递给 gcloud 或上传到 FTL 网络控制台)。