Summary: Methods | Inherited Methods | [Expand All]

# Espresso

`public final class Espresso`
`extends Object` ``

java.lang.Object
↳ | android.support.test.espresso.Espresso

Entry point to the Espresso framework. Test authors can initiate testing by using one of the on* methods (e.g. onView) or perform top-level user actions (e.g. pressBack).

## Summary

### Public methods
`static void` | `closeSoftKeyboard()` Closes soft keyboard if open.
`static List<IdlingResource>` | `getIdlingResources()` Returns a list of all currently registered `IdlingResource`s.
`static DataInteraction` | `onData(Matcher<? extends Object> dataMatcher)` Creates an `DataInteraction` for a data object displayed by the application.
`static ViewInteraction` | `onView(Matcher<View> viewMatcher)` Creates a `ViewInteraction` for a given view.
`static void` | `openActionBarOverflowOrOptionsMenu(Context context)` Opens the overflow menu displayed within an ActionBar.
`static void` | `openContextualActionModeOverflowMenu()` Opens the overflow menu displayed in the contextual options of an ActionMode.
`static void` | `pressBack()` Press on the back button.
`static boolean` | `registerIdlingResources(IdlingResource... resources)` Registers one or more `IdlingResource`s with the framework.
`static void` | `registerLooperAsIdlingResource(Looper looper)` Registers a Looper for idle checking with the framework.
`static void` | `registerLooperAsIdlingResource(Looper looper, boolean considerWaitIdle)` Registers a Looper for idle checking with the framework.
`static void` | `setFailureHandler(FailureHandler failureHandler)` Changes the default `FailureHandler` to the given one.
`static boolean` | `unregisterIdlingResources(IdlingResource... resources)` Unregisters one or more `IdlingResource`s.

### Inherited methods
From class `java.lang.Object`
`Object` | `clone()`
`boolean` | `equals(Object arg0)`
`void` | `finalize()`
`final Class<?>` | `getClass()`
`int` | `hashCode()`
`final void` | `notify()`
`final void` | `notifyAll()`
`String` | `toString()`
`final void` | `wait(long arg0, int arg1)`
`final void` | `wait(long arg0)`
`final void` | `wait()`

## Public methods

### closeSoftKeyboard

    void closeSoftKeyboard ()

Closes soft keyboard if open.

### getIdlingResources

    List<IdlingResource> getIdlingResources ()

Returns a list of all currently registered `IdlingResource`s.

Returns
`List<IdlingResource>` |

### onData

    DataInteraction onData (Matcher<? extends Object> dataMatcher)

Creates an `DataInteraction` for a data object displayed by the application. Use this method to load (into the view hierarchy) items from AdapterView widgets (e.g. ListView).

Parameters
`dataMatcher` | `Matcher`: a matcher used to find the data object.

Returns
`DataInteraction` |

### onView

    ViewInteraction onView (Matcher<View> viewMatcher)

Creates a `ViewInteraction` for a given view. Note: the view has to be part of the view hierarchy. This may not be the case if it is rendered as part of an AdapterView (e.g. ListView). If this is the case, use Espresso.onData to load the view first.

Parameters
`viewMatcher` | `Matcher`: used to select the view.

Returns
`ViewInteraction` |

See also:

- `onData(org.hamcrest.Matcher)`

### openActionBarOverflowOrOptionsMenu

    void openActionBarOverflowOrOptionsMenu (Context context)

Opens the overflow menu displayed within an ActionBar.

This works with both native and SherlockActionBar ActionBars.

Note the significant differences of UX between ActionMode and ActionBars with respect to overflows. If a hardware menu key is present, the overflow icon is never displayed in ActionBars and can only be interacted with via menu key presses.

Parameters
`context` | `Context`

### openContextualActionModeOverflowMenu

    void openContextualActionModeOverflowMenu ()

Opens the overflow menu displayed in the contextual options of an ActionMode.

This works with both native and SherlockActionBar action modes.

Note the significant difference in UX between ActionMode and ActionBar overflows - ActionMode will always present an overflow icon and that icon only responds to clicks. The menu button (if present) has no impact on it.

### pressBack

    void pressBack ()

Press on the back button.

Throws
`PerformException` | if currently displayed activity is root activity, since pressing back button would result in application closing.

### registerIdlingResources

    boolean registerIdlingResources (IdlingResource... resources)

Registers one or more `IdlingResource`s with the framework. It is expected, although not strictly required, that this method will be called at test setup time prior to any interaction with the application under test. When registering more than one resource, ensure that each has a unique name. If any of the given resources is already registered, a warning is logged.

Parameters
`resources` | `IdlingResource`

Returns
`boolean` | `true` if all resources were successfully registered

### registerLooperAsIdlingResource

    void registerLooperAsIdlingResource (Looper looper)

Registers a Looper for idle checking with the framework. This is intended for use with non-UI thread loopers.

Parameters
`looper` | `Looper`

Throws
`IllegalArgumentException` | if looper is the main looper.

### registerLooperAsIdlingResource

    void registerLooperAsIdlingResource (Looper looper,
                    boolean considerWaitIdle)

Registers a Looper for idle checking with the framework. This is intended for use with non-UI thread loopers.

This method allows the caller to consider Thread.State.WAIT to be 'idle'.

This is useful in the case where a looper is sending a message to the UI thread synchronously through a wait/notify mechanism.

Parameters
`looper` | `Looper`
`considerWaitIdle` | `boolean`

Throws
`IllegalArgumentException` | if looper is the main looper.

### setFailureHandler

    void setFailureHandler (FailureHandler failureHandler)

Changes the default `FailureHandler` to the given one.

Parameters
`failureHandler` | `FailureHandler`

### unregisterIdlingResources

    boolean unregisterIdlingResources (IdlingResource... resources)

Unregisters one or more `IdlingResource`s. If any of the given resources are not already registered, a warning is logged.

Parameters
`resources` | `IdlingResource`

Returns
`boolean` | `true` if all resources were successfully unregistered

- ## Interfaces

  - BaseLayerComponent
  - EspressoException
  - FailureHandler
  - IdlingResource
  - IdlingResource.ResourceCallback
  - UiController
  - ViewAction
  - ViewAssertion
  - ViewFinder
  - ViewInteractionComponent

- ## Classes

  - AmbiguousViewMatcherException.Builder
  - DataInteraction
  - Espresso
  - GraphHolder
  - IdlingPolicies
  - IdlingPolicy
  - NoMatchingViewException.Builder
  - PerformException.Builder
  - Root
  - Root.Builder
  - ViewInteraction

- ## Exceptions

  - AmbiguousViewMatcherException
  - AppNotIdleException
  - IdlingResourceTimeoutException
  - InjectEventSecurityException
  - NoActivityResumedException
  - NoMatchingRootException
  - NoMatchingViewException
  - PerformException