こういうメニュー定義だと、オーバーフローメニューになります。
<menu xmlns:android="http://schemas.android.com/apk/res/android" >
<item
android:id="@+id/action_settings"
android:orderInCategory="100"
android:showAsAction="never"
android:title="@string/action_settings"/>
</menu>
このメニューをクリックするには、Espresso で用意されている openActionBarOverflowOrOptionsMenu()を使います。
import static com.google.android.apps.common.testing.ui.espresso.Espresso.openActionBarOverflowOrOptionsMenu;
...
public class MainActivityUITest extends
ActivityInstrumentationTestCase2<MainActivity> {
public MainActivityUITest() {
super(MainActivity.class);
}
@Override
protected void setUp() throws Exception {
super.setUp();
getActivity();
}
public void testLaunchSetting() {
// オーバーフローメニューを開く
openActionBarOverflowOrOptionsMenu(getInstrumentation()
.getTargetContext());
// 設定メニューをクリック
onView(withText(R.string.action_settings)).perform(click());
// TODO 設定画面のチェック
}
}