title: Espresso - How can I check if an activity is launched after performing a certain action?
body: <p>the following is one of my Espresso test cases.</p>
  
  <pre><code>    public void testLoginAttempt() {
          Espresso.onView(ViewMatchers.withId(R.id.username)).perform(ViewActions.clearText()).perform(ViewActions.typeText("nonexistinguser@krossover.com"));
          Espresso.onView(ViewMatchers.withId(R.id.username)).perform(ViewActions.clearText()).perform(ViewActions.typeText("invalidpassword"));
  
          Espresso.onView(ViewMatchers.withId(R.id.login_button)).perform(ViewActions.click());
          // AFTER CLICKING THE BUTTON, A NEW ACTIVITY WILL POP UP.
          // Clicking launches a new activity that shows the text entered above. You don't need to do
          // anything special to handle the activity transitions. Espresso takes care of waiting for the
          // new activity to be resumed and its view hierarchy to be laid out.
          Espresso.onView(ViewMatchers.withId(R.id.action_logout))
                  .check(ViewAssertions.matches(not(ViewMatchers.isDisplayed())));
  
      }
  </code></pre>
  
  <p>Currently what I did was to check if a view in the new activity (R.id.action_logout) is visibible or not. If visible, I will assume tha the activity opened successfully.
  But it doesn't seem to work as I expected.
  Is there a better way to check if a new activity is successfully launched instead of checking a view in that activity is visible?
  Thanks</p>