0

私は Android での自動テストに取り組んでおり、Espresso 経由で実行されているかどうかをコードで判断する方法を見つけようとしています。私は以下に出くわしました:

ActivityManager.isRunningInTestHarness()

しかし、それはうまくいきません。私にできる同様のことはありますか?build.gradle で Espresso テスト用の buildConfigField を追加する方法はありますか?

4

1 に答える 1

3

アプリがテスト スイートによってインストルメント化されて実行されているかどうかを確実に確認する 1 つの方法は、テスト スイート クラスを読み込んでみることです。

private boolean isInstrumentedRun() {
    boolean result;
    try {
        getApplication().getClassLoader().loadClass(
                "my.fully.qualified.TestProjectClass");
        result = true;
    } catch (final Exception e) {
        result = false;
    }
    return result;
}
于 2014-05-20T23:41:36.733 に答える