Android Espresso - закрытие SearchView

Я работаю над тестами Espresso для Android, и для одного из моих действий я хочу выполнить поиск в списке с помощью SearchView, выбрать элемент и затем вернуться к предыдущему экрану (закрыв окно поиска и нажав кнопку вверх).

Я пробовал некоторые вещи, чтобы получить доступ к кнопке вверх / свернуть SearchView, чтобы закрыть его (это не работает):

  • onView(withContentDescription(R.string.abc_action_bar_up_description))
  • onView(withId(R.id.search_close_btn))
  • onView(withId(R.id.home))
  • onView(withId(R.id.homeAsUp))
  • onView(withId(R.id.collapseActionView))
  • Espresso.pressBack() (чтобы просто вернуться назад)

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

Заранее спасибо.

Пользовательский скаляр GraphQL
Пользовательский скаляр GraphQL
Листовые узлы системы типов GraphQL называются скалярами. Достигнув скалярного типа, невозможно спуститься дальше по иерархии типов. Скалярный тип...
Как вычислять биты и понимать побитовые операторы в Java - объяснение с примерами
Как вычислять биты и понимать побитовые операторы в Java - объяснение с примерами
В компьютерном программировании биты играют важнейшую роль в представлении и манипулировании данными на двоичном уровне. Побитовые операции...
Поднятие тревоги для долго выполняющихся методов в Spring Boot
Поднятие тревоги для долго выполняющихся методов в Spring Boot
Приходилось ли вам сталкиваться с требованиями, в которых вас могли попросить поднять тревогу или выдать ошибку, когда метод Java занимает больше...
Полный курс Java для разработчиков веб-сайтов и приложений
Полный курс Java для разработчиков веб-сайтов и приложений
Получите сертификат Java Web и Application Developer, используя наш курс.
1
0
483
3
Перейти к ответу Данный вопрос помечен как решенный

Ответы 3

Ответ принят как подходящий

По-видимому, мне пришлось дважды нажать кнопку «Назад», чтобы выйти из него, поэтому, если кто-то хочет знать, вам нужно дважды использовать Espresso.pressBack();, чтобы выйти из меню поиска.

Правильный идентификатор - R.id.search_close_btn

onView(withId(R.id.search_close_btn)).perform(click())

У меня была такая же проблема с доступом к этой кнопке вверх / вниз, и, прочитав иерархию компонентов, я обнаружил, что эта кнопка имеет описание содержимого «Свернуть». Итак, используя следующее, я решил проблему для меня:

onView(withContentDescription(androidx.appcompat.R.string.abc_toolbar_collapse_description)).perform(click())

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