Fun evening hack: trying to early detect Espresso flakes caused by tapped views being replaced in between ACTION_DOWN & ACTION_UP, which turns taps no ops without Espresso noticing. How? After ACTION_DOWN, find the touch target (reflection, hidden API) and set a fake no-op touch delegate on it. After ACTION_UP, see if it received the event. If not, fail the test.