Как эффективно использовать EspressoWeb при тестировании приложения IONIC / Cordova?

Я пишу UITests для приложения IONIC / Cordova и намерен использовать эти тесты для автоматической генерации скриншотов с помощью fastlane. Наше приложение состоит из SplashScreen, а затем домашней страницы / начальной точки, где вы можете открыть меню с несколькими кнопками, каждая из которых связана со страницей, показывающей определенное содержимое, которое запрашивается через API (например, список продуктов, список события или записи в блоге).

Проблема в том, что мне нужно дождаться завершения вызовов API и полного отображения контента, чтобы они отображались на моих снимках экрана (предварительные изображения помимо каждой записи в списке).

Я потратил несколько часов на изучение того, как мне этого добиться, но не могу найти, с чего начать. Я пытаюсь это:

Atom<ElementReference> element = findElement(Locator.XPATH, xPathMenuButton);
onWebView().withElement(element).perform(webClick());

Я использую ConditionWatcher из azimolabs, см. Ссылку, чтобы дождаться появления или скрытия элементов.

onWebView().withTimeout(5, TimeUnit.SECONDS).check(webContent(hasElementWithId("modal")));

Я не думаю, что я делаю это правильно. Должна быть возможность запрашивать приложение IONIC, если текущий процесс завершен (страница загружена, содержимое обработано / отображение завершено). Или я не прав?

Помощь очень ценится, так как я новичок во всех этих темах и методах.

подробнее о ConditionWatcher, которым я сейчас пользуюсь

0 ответов

Другие вопросы по тегам