UI-тест ждёт загрузку через Thread.sleep(3000) и падает на CI раз в пять запусков
@Test
fun showsOrders() {
ActivityScenario.launch(OrdersActivity::class.java)
Thread.sleep(3000)
onView(withText("Заказ №1043")).check(matches(isDisplayed()))
}
Заказы грузятся корутиной на Dispatchers.IO из тестового сервера. Локально тест зелёный, на загруженном CI периодически не находит элемент. Как сделать тест стабильным?
- Сообщать Espresso о загрузке через IdlingResource
- Увеличить паузу до 10 секунд
- Повторять упавший тест три раза
- Запускать загрузку на Dispatchers.Main
