我要测试的UI具有一个具有焦点的EditText。插入符号大约每秒钟闪烁一次,这使UI线程几乎始终处于活动状态。
Espresso认为UI尚未准备就绪,会一直等待直到放弃。
androidx.test.espresso.AppNotIdleException:在60秒内循环进行572次迭代。以下闲置条件使ASYNC_TASKS_HAVE_IDLED失败。
有没有办法防止这种行为?我已经注意到,只有在用于测试的非常旧的设备(Galaxy Nexus)上会发生这种情况,而在较新的设备(Huawei P10 +)上则不会发生这种情况。所以我不确定这与表面更新有关。
从开发人员选项触发水面更新时,会出现一些奇怪的现象:Galaxy Nexus仅在插入符号闪烁时才更新水面,而华为不断更新水面(ugh!)。但是测试在华为上可以正常工作。
答案 0 :(得分:0)
我们只是在网络视图上点击了此按钮。反复试验最终显示出它与那里的软键盘有关。
我们使用模拟器,因此只需禁用键盘:
adb shell设置将show_ime_with_hard_keyboard安全设置为0
测试我们的Web视图时不再出现AppNotIdleException。 不确定您可以在设备上做什么,但这也许会为您提供线索。