Testing Snackbar show with Espresso Testing Snackbar show with Espresso android android

Testing Snackbar show with Espresso


This worked for me, please try.

onView(allOf(withId(android.support.design.R.id.snackbar_text), withText("My text")))            .check(matches(isDisplayed()));

If you use AndroidX, please use the following:

onView(withId(com.google.android.material.R.id.snackbar_text))        .check(matches(withText(R.string.whatever_is_your_text)))


An alternative

private void checkSnackBarDisplayedByMessage(@StringRes int message) {    onView(withText(message))            .check(matches(withEffectiveVisibility(ViewMatchers.Visibility.VISIBLE)));}


I saw the previous answers but I thought this would be better.

@Testpublic void onFabClick_shouldDisplaySnackbar() throws Exception {  onView(withId(R.id.fab)).perform(click());  // Compare with the text message of snackbar  onView(withText(R.string.snackbar_message))      .check(matches(isDisplayed()));}