Android Espresso

19
Android Espresso +ArmandoPicon @devpicon

Transcript of Android Espresso

Page 1: Android Espresso

Android Espresso+ArmandoPicon@devpicon

Page 2: Android Espresso
Page 3: Android Espresso

¿Qué es Espresso?

● Es una característica del Android Testing Support Library

● Simula interacciones del usuario● Sincronización automática de acciones de

los tests con la interfaz de usuario

Page 4: Android Espresso

Espresso - Básicos

onView(ViewMatcher)

.check(ViewAssertion);

Page 5: Android Espresso

Espresso - BásicosonView(withId(R.id.txt_helloworld))

.check(ViewAssertion);

Page 6: Android Espresso

Espresso - BásicosonView(withId(R.id.txt_helloworld))

.check(matches(

withText(R.string.hello_world)

));

Page 7: Android Espresso

Espresso - Básicos

onView(ViewMatcher)

.perform(ViewAction)

.check(ViewAssertion);

Page 8: Android Espresso

Espresso - BásicosonView(withId(R.id.button_clickme))

.perform(ViewAction)

.check(ViewAssertion);

Page 9: Android Espresso

Espresso - BásicosonView(withId(R.id.button_clickme))

.perform(click())

.check(ViewAssertion);

Page 10: Android Espresso

Espresso - BásicosonView(withId(R.id.button_clickme))

.perform(click())

.check(matches(not(isEnabled())));

Page 11: Android Espresso

Este y otros ejemplos:github.com/apiconz/espresso-ejemplos

Page 12: Android Espresso

Librería EspressoonView(withId(R.id.button_clickme))

.perform(click())

.check(matches(not(isEnabled())));

Page 13: Android Espresso

HamcrestonView(withId(R.id.button_clickme))

.perform(click())

.check(matches(not(isEnabled())));

Page 14: Android Espresso

Espresso

https://code.google.com/p/android-test-kit/wiki/EspressoV2CheatSheet

Page 15: Android Espresso

Hamcrest

http://www.marcphilipp.de/blog/2013/01/02/hamcrest-quick-reference/

Page 16: Android Espresso

Manos a la obra!

Page 17: Android Espresso

Receta1. Agregamos dependencias en gradle2. Declaramos el Instrumentation Runner en defaultConfig3. Desactivamos animaciones en el dispositivo4. Creamos una clase con las anotaciones @RunWith y

@LargeTest5. Declaramos la regla con la anotación @Rule6. Escribimos nuestro test @Test

Page 18: Android Espresso

Este y otros ejemplos:github.com/apiconz/espresso-ejemplos

Page 19: Android Espresso

Gracias!@devpicon

+ArmandoPicon

github.com/apiconz

apiconz.blogspot.com