David Gonzalez is an Android Software Engineer at Help Scout and a Google Developer Expert for Android. Previously working at Novoda, he’s actively involved in the Android community, co-organises the London Android User Group and has been developing with the Android platform since 2009.

Session Description:
Reproducing user journeys and ensure that the interactions work as expected helps to ensure that users do not encounter unexpected behaviour or have a poor experience when interacting with your application. For a long time this has been very difficult to achieve in Android, until Google released Espresso. Espresso is a testing framework, provided by the Android Testing Support Library, which provides APIs for writing UI tests to simulate user interactions within a single target app.

In this hands on session, we’ll practice UI Testing, using Espresso to interact with the application UI and Dagger 2 to replace production code with Test Doubles. All attendees will have access to the application code, which consists in two screens (List and Detail) and has 0 UI tests. Our goal at the end of the session is to have written UI tests for all the screens and functionalities available.

Prerequisite: Any type of experience with Espresso is highly recommendable. One should be familiar with the Dependency Injection pattern and understand it.

Duration: Half-day (3 hours and 30 minutes)