Я пишу эспрессо-тесты для моего приложения.Для одного теста я должен нажать на кнопку RecyclerView-Item.Указанный элемент больше экрана, поэтому при прокрутке до элемента требуемая кнопка все еще не отображается (что необходимо, чтобы я мог щелкнуть по ней).
Я попытался прокрутить до вида с помощью
onView(withId(R.id.recycler_view)).perform(scrollTo<MyViewHolder>(hasDescendant(withId(R.id.target_button))))
но это просто прокручивается к началу элемента, который содержит кнопку.Поскольку кнопка находится в самом низу этого элемента, а элемент больше экрана, при попытке нажать кнопку я получаю
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.
, поэтому я также пытался
onView(withId(R.id.recycler_view)).perform(actionOnItemAtPosition<MyViewHolder>(0, EspressoUtils.clickChildViewWithId(R.id.target_button)))
где EspressoUtils.clickChildViewWithId(id: Int)
- это то, что описано в принятом ответе на этот вопрос.Это также привело к той же ошибке.Как прокрутить до конкретного дочернего элемента в RecyclerView-Item?