Не могу прокрутить вверх, используя EarlGrey

У меня есть UICollectionView, в котором я могу прокрутить вниз, но не могу прокрутить вверх. Я не уверен, что мне не хватает чего-то очень простого - вот код ниже:

(Форматирование было странным, вот скриншот)

введите описание изображения здесь

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

Изменить: Попытка добавления grey_sufficientlyVisible согласно @gran_profaci, и все еще не может найти элемент.

no UI element matching (matcherForSufficientlyVisible(>=0.750000) && (respondsToSelector(accessibilityIdentifier) && accessibilityID("bar"))) was found. Но он все еще существует в зарегистрированной иерархии.

введите описание изображения здесь

1 ответ

Решение

Вот простой тест, который вы можете выполнить с помощью EarlGrey - настройте табличное представление или используйте функцию FunctionalTestApp EarlGrey и попробуйте прокрутить до одного края содержимого и затем назад. В середине одного из свитков приостановите тест и добавьте следующее в консоль отладки:

po [GREYElementHierarchy hierarchyStringForAllUIWindows]

Вы можете заметить, что в иерархии может быть несколько ячеек, которые не видны на экране. Когда вы использовали прокрутку поиска, чтобы найти grey_accessibilityID(@"bar")вы ищете, чтобы убедиться, что ячейка присутствует в иерархии, а не только если вы можете видеть / взаимодействовать с ней.

Пожалуйста, добавьте grey_sufficientlyVisible() к сопоставителям grey_accessibilityID(@"...") и посмотрите, что вы получите.

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