Robię test przy użyciu espresso, najpierw otworzyć pasek Działanie:kliknięcie na menu w pasku akcji z espresso przy użyciu OnView (withId (...))
openActionBarOverflowOrOptionsMenu(getInstrumentation().getTargetContext());
wszystko ok aż do tutaj, ale chcę, aby kliknąć na menu opcji:
onView(withId(R.id.action_menu)).perform(click());
menu układ xml posiada opcję o identyfikatorze „action_menu”.
pojawia się błąd:
android.support.test.espresso.NoMatchingViewException: No views in hierarchy found matching: with id: ***.********.******.android.debug:id/action_menu
If the target view is not part of the view hierarchy, you may need to use Espresso.onData to load it from one of the following AdapterViews:android.support.v7.widget.ListPopupWindow$DropDownListView{43fd3f58 VFED.VC. .F...... 24,24-612,168}
mam ten krok, aby pracować przy użyciu:
onView(withText(R.string.action_report)).perform(click());
Chciałbym wiedzieć, co się dzieje złego z id chociaż.
Wszelkie pomysły?
Czy pozycja rzeczywiście ma id = "@ + id/action_menu"? Z matownicy withText wynika, że może to być bardziej szczegółowe, np. Report_action. – siger
Hi siger, tak element ma id 'android: id =" @ + id/action_menu "', ale espresso znajduje się tylko w tekście. Wciąż nie wiem dlaczego ... –