次の方法で、いくつかのエスプレッソ テストでホーム アイコンをクリックしようとしています。
onView(withId(android.R.id.home)).perform(click());
これは Android > 3.0 では問題なく動作しますが、古いバージョンでappcompat
はこの要素にこの ID を使用していないように見えるため失敗します。私がやりたいことをするための良いアプローチは何ですか?
次の方法で、いくつかのエスプレッソ テストでホーム アイコンをクリックしようとしています。
onView(withId(android.R.id.home)).perform(click());
これは Android > 3.0 では問題なく動作しますが、古いバージョンでappcompat
はこの要素にこの ID を使用していないように見えるため失敗します。私がやりたいことをするための良いアプローチは何ですか?
次を使用しwithContentDescription()
Matcher
ます。
onView(withContentDescription("Navigate up")).perform(click());
あるアクティビティから別のアクティビティに戻るのに苦労しましたが、最上位のアクションを見つけました。
Espresso.pressBack();
引き出しを開閉する場合は、Espresso contrib ライブラリを使用することをお勧めします。
onView(withId(R.id.drawer_layout)).perform(DrawerActions.open());
ビューを押し戻すには:
onView(isRoot()).perform(pressBack());
更新: 見つかりR.string.abc_action_bar_up_description
ませんでした。androidx に関係している可能性があります。これについてはよくわかりません。代わりに使用R.string.nav_app_bar_navigate_up_description
したコードは次のようになります。
onView(withContentDescription(R.string.nav_app_bar_navigate_up_description)).perform(click())
onbackpress
アクティビティに追加して、次を使用します。
onView(withContentDescription("Navigate up")).perform(click());