使用自定义检测找不到插桩测试 - 条件检测



>我有一个正在运行的Android应用程序,其清单包含此<instrumentation>节点

<instrumentation
    android:name=".MyInstrumentation"
    android:targetPackage="my.package"/>

我也进行了检测测试,但是当我运行这些测试时,我得到了这个

$ adb shell am instrument -w -r-e debug false my.package.test/my.package.MyInstrumentation
Client not ready yet..
Started running tests
Test running failed: Unable to find instrumentation info for: ComponentInfo{my.package.test/my.package.MyInstrumentation}android.util.AndroidException: INSTRUMENTATION_FAILED: my.package.test/my.package.MyInstrumentation
. onError: commandError=true message=INSTRUMENTATION_FAILED: my.package.test/my.package.Instrumentation

并且不运行测试。

如果我从清单中删除检测声明,它可以正常工作,当我像这样运行测试时,我得到这个

$ adb shell am instrument -w -r -e debug false my.package.test/androidx.test.runner.AndroidJUnitRunner
Client not ready yet..
Started running tests
Tests ran to completion.

androidx.test.runner.AndroidJUnitRunner是执行的检测。

当我从 Android Studio 运行测试以及执行 ./gradlew connectedAndroidTest 时,都会发生这种情况。

如何告诉gradle或 Android Studio 我想使用 AndroidJUnitRunner 检测运行测试?仍然允许我自己的。

build.gradle文件中添加此行,然后尝试

android {
    ...
    defaultConfig {
        ...
        testInstrumentationRunner "androidx.test.runner.AndroidJUnitRunner"
        ...
    }
    ...
}
    

最新更新