Есть отличная удаленная работа для php+codeception+jenkins+allure+docker спецов. 100% remote! Присоединиться к проекту

Espresso: Intent or Idling Resource for testing

java
Теги: #<Tag:0x00007f7b65298c80>

(Vasya Pupkin) #1

Добрый вечер. Прошу поделиться опытом использования Intent or Idling Resource в Espresso. Есть большой проект с огромной коллекцией activities. Необходимо написать UI тесты без привязки к лейбочкам в других активити, чтобы проверять или необходимая активити отобразилась или доступны определённые элементы UI в вызываемых активити. Как вы делаете данную проверку в своих проектах?


(Artem Nikitin) #2

Не совсем понял проблему…
Если в Espresso надо проверить, что какие-то UI элементы присутсвуют, то пишите что-то типа:
onView(withId(R.id.myButton)).check(matches(isDisplayed()));
Я немного использовал именно Espresso, но как я понял Idling Resource - это что-то вроде максимального времени после которого будет таймаут.


(Vasya Pupkin) #3

С MainActivity вызывается другая активити, на которой происходят асинхронные запросы. Точное время их выполнения всегда разное. После этого появляется UI. Необходимо проверить, что элементы уже отобразились на другой активити. Не хотелось принудительно вызывать Thread.sleep()


(Artem Nikitin) #4

Я работал с версией 1.х и там именно как я написал и работает. Строчка кода, что я приводил выше будет ждать время указанное в IdlingResources. Если не дождется элемента, то будет ошибка.
Если у вас 2.х, то там может уже по-другому как…


(Vasya Pupkin) #5

Дякую. Спробуємо.