1

我想测试一个具有焦点的 EditText 的 UI。每隔一秒左右就有一个插入符号闪烁,这使得 UI 线程几乎一直处于活动状态。

Espresso 认为 UI 还没有准备好,在放弃之前一直等待。

androidx.test.espresso.AppNotIdleException:在 60 秒内循环了 572 次迭代。以下空闲条件失败 ASYNC_TASKS_HAVE_IDLED。

有没有办法防止这种行为?我注意到这只发生在我用于测试的非常旧的设备(Galaxy Nexus)上,但不会发生在更新的设备(华为 P10+)上。所以我不确定这与表面更新有关。

当从开发者选项触发表面更新时,会出现一些奇怪的现象:Galaxy Nexus 只有在插入符号闪烁时才会更新表面,而华为的表面会不断更新(啊!)。但是测试在华为上运行良好。

4

1 回答 1

0

我们只是在 webview 上点击了这个。反复试验最终表明它与软键盘的存在有关。

我们使用模拟器,所以只需禁用键盘:

adb shell 设置 put 安全 show_ime_with_hard_keyboard 0

测试我们的 web 视图时不再出现 AppNotIdleException。不确定你可以在设备上做什么,但也许这会给你一个线索。

于 2018-10-10T19:32:59.973 回答