48

次の方法で、いくつかのエスプレッソ テストでホーム アイコンをクリックしようとしています。

onView(withId(android.R.id.home)).perform(click());

これは Android > 3.0 では問題なく動作しますが、古いバージョンでappcompatはこの要素にこの ID を使用していないように見えるため失敗します。私がやりたいことをするための良いアプローチは何ですか?

4

14 に答える 14

33

次を使用しwithContentDescription() Matcherます。

onView(withContentDescription("Navigate up")).perform(click());
于 2014-11-12T23:07:23.877 に答える
21

あるアクティビティから別のアクティビティに戻るのに苦労しましたが、最上位のアクションを見つけました。

Espresso.pressBack();
于 2015-02-12T09:37:18.227 に答える
3

引き出しを開閉する場合は、Espresso contrib ライブラリを使用することをお勧めします。

onView(withId(R.id.drawer_layout)).perform(DrawerActions.open());
于 2019-01-02T16:25:08.830 に答える
2

ビューを押し戻すには:

onView(isRoot()).perform(pressBack());
于 2015-03-27T16:39:29.357 に答える
1

更新: 見つかり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())
于 2020-07-03T14:13:05.623 に答える
-3

onbackpressアクティビティに追加して、次を使用します。

onView(withContentDescription("Navigate up")).perform(click());
于 2016-08-11T04:06:50.183 に答える