Slide 1

Slide 1 text

UI TESTS CON ESPRESSO JUAN FELIPE ALVAREZ SALDARRIAGA @NEBIROS

Slide 2

Slide 2 text

QUE ES ESPRESSO?

Slide 3

Slide 3 text

QUE ES ESPRESSO? ▸ Framework para hacer pruebas de la interfaz gráfica ▸ Parte de Android Testing Support Library ▸ Sirve para crear pruebas automatizadas de la interfaz gráfica de tu aplicación ▸ Corre las pruebas en un dispositivo o en un emulador ▸ Sincronización automática de las pruebas con la interfaz gráfica de tu aplicación

Slide 4

Slide 4 text

SETUP

Slide 5

Slide 5 text

SETUP ▸ Asegúrate de tener instalado Android Support Repository version 15+ ▸ Es recomendado apagar el sistema de animaciones ▸ Agregar las dependencias necesarias en nuestro archivo app/build.gradle

Slide 6

Slide 6 text

No content

Slide 7

Slide 7 text

No content

Slide 8

Slide 8 text

LO BÁSICO

Slide 9

Slide 9 text

LO BÁSICO ▸ Buscar una vista usando onView ▸ Ejecutar una acción sobre esa vista ▸ Revisar si la vista satisface algo o no

Slide 10

Slide 10 text

No content

Slide 11

Slide 11 text

No content

Slide 12

Slide 12 text

No content

Slide 13

Slide 13 text

No content

Slide 14

Slide 14 text

No content

Slide 15

Slide 15 text

MATCHERS, ACTIONS Y ASSERTIONS

Slide 16

Slide 16 text

No content

Slide 17

Slide 17 text

No content

Slide 18

Slide 18 text

No content

Slide 19

Slide 19 text

LISTAS

Slide 20

Slide 20 text

LISTAS ▸ Usamos onData en vez de onView ▸ Podemos usar los mismos “matchers”, “actions” y “assertions” ▸ Los RecyclerViews funcionan diferente, no podemos usar onData

Slide 21

Slide 21 text

No content

Slide 22

Slide 22 text

No content

Slide 23

Slide 23 text

No content

Slide 24

Slide 24 text

No content

Slide 25

Slide 25 text

No content

Slide 26

Slide 26 text

LISTAS ▸ Los RecyclerViews no heredan de AdapterView, sino de ViewGroup ▸ Debemos agregar otra dependencia, com.android.support.test.espresso:espresso-contrib

Slide 27

Slide 27 text

No content

Slide 28

Slide 28 text

DEMO

Slide 29

Slide 29 text

GRACIAS! PREGUNTAS?