Тест эспрессо не может справиться с пикерами

В тесте есть выпадающий список. Диктофон поймал щелчок, чтобы открыть раскрывающийся список вариантов. Но затем щелчок, чтобы выбрать один, не работает со следующей ошибкой:

Caused by: java.lang.RuntimeException: Action will not be performed because the target view does not match one or more of the following constraints:
at least 90 percent of the view's area is displayed to the user.

Этот вопрос Ошибка Android Espresso при нажатии кнопки связан с ограничением, но его предложение просто использовать isCompletelyDisplayed() не работает.


person Rob    schedule 12.03.2017    source источник
comment
чтобы уточнить: под сборщиком или выпадающим списком вы имеете в виду счетчик? как выглядят элементы спиннера и сколько их на выбор?   -  person stamanuel    schedule 12.03.2017
comment
Это простое выпадающее меню, а не средство выбора. Да просто спиннер.   -  person Rob    schedule 12.03.2017


Ответы (1)


Да, это происходит, когда вид, на который вы нажимаете, находится в позиции прокрутки, которая делает его невидимым для пользователя.

Просто используйте:

onView(withId(whatever)).perform(scrollTo(), click())

Я предполагаю, что ваше представление может быть настроено с помощью селектора onview.

person Javier Ventajas Hernández    schedule 12.03.2017
comment
Думать, что рекордер — это способ увидеть, как работает эспрессо, было моей первой ошибкой. Делаем некоторые успехи в этом сейчас. Ваш ответ не касается того, о чем был этот вопрос, потому что в этом счетчике все варианты отображаются при нажатии, но мне было интересно, как сделать именно это, поэтому +1. Спасибо. - person Rob; 13.03.2017
comment
но я имею в виду, нажмите на кнопку, которая открывает прядильщик, затем выберите вид на прядильщике и выполните прокрутку и нажмите на нее - person Javier Ventajas Hernández; 13.03.2017
comment
Я знаю, что Вы имеете ввиду. Я имею в виду, что когда регистрируется щелчок, появляются значения, и прокрутка не требуется. В 90% случаев это происходило по щелчку самого спиннера. - person Rob; 13.03.2017
comment
Если щелчок счетчика вызывает ошибку 90%, используйте действие scrollTo для этого щелчка. - person Javier Ventajas Hernández; 13.03.2017
comment
Я пересмотрю это. Наконец-то я получил относительно чистую тестовую работу, что приятно. Конечно, отказавшись от всякой надежды на то, что диктофон доставит меня туда. На данный момент я просто определяю встроенный ViewAction. - person Rob; 13.03.2017
comment
Я рад, что ты понял это. :) - person Javier Ventajas Hernández; 13.03.2017