Вступить в клуб →
средняявопросТестирование: JUnit, MockK, Espresso и Compose

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

🔒 Проверка ответа — для участников клуба

  • Проверка ответа
  • Подсказка, если застряли
  • Разбор с объяснением, почему так
  • Прогресс по всем задачам и виртуальные собеседования
Зарегистрироваться →

Регистрация занимает минуту

Другие задачи раздела