Как проверить заголовок панели инструментов в андроид-инструментальном тесте?

Я нашел отличный инструментальный тестовый учебник по YT Advanced Android Espresso . Я взял код оттуда с небольшой настройкой к моим потребностям.

import static android.support.test.InstrumentationRegistry.getInstrumentation; import static android.support.test.espresso.Espresso.onView; import static android.support.test.espresso.action.ViewActions.click; import static android.support.test.espresso.assertion.ViewAssertions.matches; import static android.support.test.espresso.matcher.ViewMatchers.isAssignableFrom; import static android.support.test.espresso.matcher.ViewMatchers.isDisplayed; import static android.support.test.espresso.matcher.ViewMatchers.withChild; import static android.support.test.espresso.matcher.ViewMatchers.withId; import static android.support.test.espresso.matcher.ViewMatchers.withParent; import static android.support.test.espresso.matcher.ViewMatchers.withText; import static org.hamcrest.core.AllOf.allOf; ... @Test public void checkToolbarTitle() { String toolbarTitile = getInstrumentation().getTargetContext().getString(R.string.my_bus_stops); onView(allOf(isAssignableFrom(TextView.class), withParent(isAssignableFrom(Toolbar.class)))).check(matches(withText(toolbarTitile))); } 

К несчастью, это не работает для меня. Сбой теста:

 android.support.test.espresso.NoMatchingViewException: No views in hierarchy found matching: (is assignable from class: class android.widget.TextView and has parent matching: is assignable from class: class android.widget.Toolbar) 

Что с этим не так? Как я могу проверить его по-другому?

Это работает для меня:

 onView(allOf(instanceOf(TextView.class), withParent(withId(R.id.toolbar)))) .check(matches(withText("toolbarTitile"))); 

РЕШЕНИЕ

Метод хорош. Как написал в своем учебнике Chiu-Ki Chan, вы можете «точно определить один конкретный вид». НО вы должны убедиться, что вы ввели правильную панель инструментов:

 import android.support.v7.widget.Toolbar; 

вместо:

 import android.widget.Toolbar; 
Intereting Posts
Получение контактного ID из базы данных контактов Android не работает должным образом Почему для местоположения игровых сервисов необходимы разрешения android.permission.WRITE_EXTERNAL_STORAGE и android.permission.READ_EXTERNAL_STORAGE? Невозможно разобрать массив Json с использованием Gson Использование вопросительного знака в виде строки в android Android: api 16 рисует контур прямоугольника как заполненный прямоугольник IllegalArgumentException в StatFs в внутреннем потоке WebViewCore Как изменить размер (растянуть) Android RatingBar, не добавляя больше Звезд Восстановить Android-устройство Дата выпуска Программно? Не удалось отладить Whitelisted device / ApplicationSession, не запуская Анимация для графиков с использованием API диаграммы Google в android Как включить только один экземпляр моего приложения Не работает рабочая граница TextInput Android – SearchView на панели инструментов не расширяется Android MediaPlayer getCurrentPosition () вызывает звук заикания Как проверить, подключены ли Bluetooth-гарнитуры на Android?