phone 睡着了的浓缩咖啡测试

Espresso test with phone asleep

我正在尝试建立一个测试农场,但我发现了一个很大的障碍。当 phone 处于睡眠状态时,Espresso 测试无法 运行。

android.support.test.espresso.NoActivityResumedException: No activities in stage RESUMED. Did you forget to launch the activity. (test.getActivity() or similar)?

是的,我知道我可以在开发者选项中将其设置为永不休眠,但我不想杀死 phone 的显示器。我也尝试启用 Daydream,但它有同样的问题。

知道如何解决吗?

像这样修改 ActivityonCreate 方法:

@Override
protected void onCreate(final Bundle savedInstanceState) {
    super.onCreate(savedInstanceState);
    if (BuildConfig.DEBUG) {
        getWindow().addFlags(WindowManager.LayoutParams.FLAG_SHOW_WHEN_LOCKED | WindowManager.LayoutParams.FLAG_TURN_SCREEN_ON);
    }
    //
    // Your code ...
    //
}

你不需要任何权限,它只发生在 DEBUG 构建上。