Я пытаюсь щелкнуть по тексту в виде списка, используя Espresso. Я знаю, что они это руководство, но я не вижу, как это сделать, ища текст. Это то, что я пробовал
Espresso.onData(Matchers.allOf(Matchers.is(Matchers.instanceOf(ListView.class)), Matchers.hasToString(Matchers.startsWith("ASDF")))).perform(ViewActions.click());
Как и ожидалось, это не сработало. Ошибка не указала вид в иерархии. Кто-нибудь знает, как выбрать строку? ("ASDF"
в этом случае) Спасибо заранее.
Обновление из-за @haffax
Я получил ошибку:
com.google.android.apps.common.testing.ui.espresso.AmbiguousViewMatcherException: 'присваивается классу: class android.widget.AdapterView' соответствует нескольким представлениям в иерархии.
Вторая ошибка
С помощью этого кода
onData(hasToString(startsWith("ASDF"))).inAdapterView(withContentDescription("MapList")).perform(click());
Я получаю эту ошибку
com.google.android.apps.common.testing.ui.espresso.PerformException: Ошибка выполнения "данных адаптера нагрузки" в представлении с описанием содержимого: "MapList".
Вызвано: java.lang.RuntimeException: не найдено данных: asString (строка, начинающаяся с ASDF)
Решение
Ondata (ничего()). InAdapterView (withContentDescription ( "убывание" )). AtPosition (х).Произвести (нажмите())