Sto scrivendo alcuni espressotest per un'applicazione che ho recentemente fatto. Sto usando un NavigationView all'interno di DrawerLayout come menu scorrevole.Test caffè espresso Android NavigationView
sono riuscito ad aprire il cassetto in questo modo:
onView(withId(R.id.drawer_layout)).perform(open());
Questo funziona così ora sto cercando di eseguire un click su un menuitem nel NavigationView.
onView(withId(R.id.nav_register))..
Impossibile trovare la vista. Ho provato diverse cose ma non riesco a trovare un modo per recuperare la vista menuitem. Questo è il modo in cui gli elementi vengono assegnati nel codice:
<android.support.design.widget.NavigationView
android:id="@+id/nav_view"
android:layout_width="wrap_content"
android:layout_height="match_parent"
android:layout_gravity="start"
android:fitsSystemWindows="true"
app:headerLayout="@layout/nav_header_main"
app:menu="@menu/activity_main_drawer" />
e activity_main_drawer.xml
<group android:checkableBehavior="single">
<item
android:id="@+id/nav_home"
android:icon="@drawable/ic_menu_home"
android:title="Home" />
<item
android:id="@+id/nav_register"
android:icon="@drawable/ic_menu_register"
android:title="Registreer" />
<item
android:id="@+id/nav_login"
android:icon="@drawable/ic_menu_login"
android:title="Log in" />
<item
android:id="@+id/nav_play"
android:icon="@drawable/ic_menu_play"
android:title="Speel sessie" />
<item
android:id="@+id/nav_logout"
android:icon="@drawable/ic_menu_logout"
android:title="Log uit" />
</group>
ho letto qualcosa su NavigationViewMenuItem è un membro privato e non accessibile. Qualcuno mi può aiutare?
Saluti! Shenno
Suona come l'id delle voci di menu non è la stessa come le viste che sono costruiti per il menu. Forse usare un diverso matcher per trovare la vista dal suo testo piuttosto che dal suo id? –
Per aiutare gli altri che sono arrivati qui con problemi di interazione con il cassetto, per usare ".perform (aperto)" devi aggiungere una dipendenza: androidTestCompile 'com.android.support.test.espresso: espresso-contrib: 3.0.1' – Kunami