Как написать тест Compose Instrument Test для кода, имеющего «задержку»Android

Форум для тех, кто программирует под Android
Anonymous
Как написать тест Compose Instrument Test для кода, имеющего «задержку»

Сообщение Anonymous »

Я пишу модульный тест Compose для некоторого кода, который при нажатии кнопки отображает некоторый текст, а затем ждет 5 секунд, прежде чем отображать больше текста, а затем ждет еще 5 секунд, прежде чем показывать больше текста. Он использует задержку (5000) для ожидания 5 секунд для каждого шага.
Я написал тесты тремя способами, чтобы попытаться дождаться завершения серии перед проверкой конечного состояния: но со всеми тремя тест терпит неудачу, потому что процесс начинается только после завершения теста.
Я пробовал это:

Код: Выделить всё

    composeTestRule.onNodeWithText("Show").performClick()
composeTestRule.waitUntil(20000){true}
composeTestRule.onNodeWithText("Final Text Exists").assertExists("nope")
и это:

Код: Выделить всё

composeTestRule.onNodeWithText("Show").performClick()
delay(20000)
composeTestRule.onNodeWithText("Final Text Exists").assertExists("nope")
и это:

Код: Выделить всё

    composeTestRule.onNodeWithText("Show").performClick()
composeTestRule.waitForIdle()
composeTestRule.onNodeWithText("Final Text Exists").assertExists("nope")
Как это сделать?

Подробнее здесь: https://stackoverflow.com/questions/781 ... as-a-delay

Вернуться в «Android»