You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Describe the bug
Создал скриншот тест, в котором необходимо сделать снимок экрана после того, как определенный элемент станет видимым. Для проверки на видимость используется kView.isVisible(). Под капотом вызов этого метода оборачивается во flakySafely с определенным таймаутом (вроде 10 секунд), т.е. если первая проверка вернет false, то в течение 10 секунд она повторится еще несколько раз
class LoadUserScreenshots : DocLocScreenshotTestCase(locales = "en, fr") {
@get:Rule
val activityRule = activityScenarioRule<LoadUserActivity>()
@Test
fun takeScreenshots() = run {
LoadUserScreen {
step("Capture initial state") {
loadingButton.isVisible()
captureScreenshot("Initial state")
}
step("Capture progress state") {
loadingButton.click()
progressBarLoading.isVisible()
captureScreenshot("Progress state")
}
step("Capture content state") {
username.isVisible() // Обратить внимание на этот шаг, тест падает здесь
captureScreenshot("Content state")
}
}
}
}
Если в конструктор DocLocScreenshotTestCase передать список локалей, то тест запустится для каждой из них, при этом для первого языка все пройдет успешно и вызов метода isVisible будет обернут в flakySafely и спустя определенное время тест будет зеленым. Но при втором прогоне тест упадет с ошибкой, что isVisible вернул false, дополнительных вызовов в течение 10 секунд не будет, flakySafely не отрабатывает.
Важно - если убрать метод run и step-ы и вызывать метод isVisible напрямую в тестовом методе, то все пройдет успешно, в обоих случаях flakySafely применится
To Reproduce
Создать скриншот-тест с несколькими локалями
В скриншот тесте создать тестовый метод, который будет использовать run и step-ы
На одном из шагов должна быть проверка на kView.isVisible, которая вернет true не мгновенно, а спустя несколько секунд
Для первой локали все пройдет успешно, для следующей - тест упадет
Expected behavior
FlakySafely используется всегда независимо от переданного количества локалей
Smartphone (please complete the following information):
Воспроизводилось на устройствах с API 28, 30, 33
The text was updated successfully, but these errors were encountered:
Describe the bug
Создал скриншот тест, в котором необходимо сделать снимок экрана после того, как определенный элемент станет видимым. Для проверки на видимость используется kView.isVisible(). Под капотом вызов этого метода оборачивается во flakySafely с определенным таймаутом (вроде 10 секунд), т.е. если первая проверка вернет false, то в течение 10 секунд она повторится еще несколько раз
class LoadUserScreenshots : DocLocScreenshotTestCase(locales = "en, fr") {
}
Если в конструктор DocLocScreenshotTestCase передать список локалей, то тест запустится для каждой из них, при этом для первого языка все пройдет успешно и вызов метода isVisible будет обернут в flakySafely и спустя определенное время тест будет зеленым. Но при втором прогоне тест упадет с ошибкой, что isVisible вернул false, дополнительных вызовов в течение 10 секунд не будет, flakySafely не отрабатывает.
Важно - если убрать метод run и step-ы и вызывать метод isVisible напрямую в тестовом методе, то все пройдет успешно, в обоих случаях flakySafely применится
To Reproduce
Создать скриншот-тест с несколькими локалями
В скриншот тесте создать тестовый метод, который будет использовать run и step-ы
На одном из шагов должна быть проверка на kView.isVisible, которая вернет true не мгновенно, а спустя несколько секунд
Для первой локали все пройдет успешно, для следующей - тест упадет
Expected behavior
FlakySafely используется всегда независимо от переданного количества локалей
Smartphone (please complete the following information):
Воспроизводилось на устройствах с API 28, 30, 33
The text was updated successfully, but these errors were encountered: