0

我正在Android中进行自动化测试,我正在尝试找出一种方法来确定 - 在代码中 - 它是否通过 Espresso 执行。我遇到了以下情况:

ActivityManager.isRunningInTestHarness()

但这不起作用。我可以做类似的事情吗?有没有办法在 build.gradle 中为 Espresso 测试添加 buildConfigField?

4

1 回答 1

3

可靠地确定您的应用程序是否正在运行由您的测试套件检测的一种方法是尝试加载测试套件类:

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 回答