Первая версия моего приложения поддерживала только книжную ориентацию, и в нижнем колонтитуле было меню Button
(с id = menu_button). Так что в тестах эспрессо у меня был такой метод, чтобы нажать на кнопку меню:
public static void clickOnMenuButton() {
onView(withId(R.id.menu_button))
.perform(click());
}
Однако во второй версии я реализую альбомную версию, и там кнопка меню находится в заголовке, и это ImageView
(с id = menu_icon).
Итак, я изменил метод следующим образом:
public static void clickOnMenuButton(boolean isLandscape) {
onView(withId(isLandscape ? R.id.menu_icon : R.id.menu_button))
.perform(click());
}
И параметр isLandscape
получается с mActivityTestRule.getActivity().getRequestedOrientation() == ActivityInfo.SCREEN_ORIENTATION_LANDSCAPE
Это работает, но я хотел бы знать, есть ли лучший способ справиться с этим, о котором я не знаю ...
Любые идеи о том, как следует проводить портретные / ландшафтные эспрессо-тесты?