Episodio 48 – Cuidado con los Tests de Instrumentación
Los tests unitarios son muy rápidos y fiables. Pero con los tests de instrumentación debemos de andar con ojo, ya que para empezar son muchísimo más lentos, con lo que vamos a añadir un tiempo considerable al CI, nuestro sistema de Integración Continua, cada vez que incorporemos uno.
En el audio te cuento más sobre el tema.
Y si quieres saber más, mira este episodio sobre tests de UI.
Transcripción
¡Muy buenas!
Soy Gabi Moreno y te doy la bienvenida al episodio número 48 de Productividad en el Desarrollo Android. El podcast donde hablamos sobre qué puedes hacer para ser una desarrolladora o desarrolladora Android más eficaz y eficiente.
Te contamos técnicas, hábitos, herramientas, conceptos, tips y todo o aquello que te va a hacer crecer sí o sí, porque hay algo que todos tenemos en común y es que el día dura 24 horas, como inviertas o gastes este tiempo, es cosa tuya.
Los test de instrumentación son un arma de doble filo.
En este episodio voy a hablarte sobre cosas que deberíamos considerar cuando estamos haciendo test de instrumentación, ya sean en tu EN, de UI o cualquier otro test que precise de un dispositivo Android para ser ejecutado, ya sea emulado o no. Hay que ir con cuidado porque así como pueden ir de cine para comprobar flujos completos y otras cosas que no podríamos hacer con test unitarios, en ocasiones pueden jugar en nuestra contra.
Los test unitarios son muy rápidos y fiables, pero con los test de instrumentación debemos andar con ojo, ya que para empezar son muchísimo más lentos con lo que vamos a añadir un tiempo considerable al CI, nuestro sistema de integración continua, cada vez que incorporemos uno. Si añadimos tiempo, esto significa que nos va a costar más hacer las comprobaciones y además, con el tiempo, se traducirá en que también deberemos pagar más dinero por el servicio que estemos usando. Por si esto fuera poco, dependiendo del dispositivo que estemos emulando o si lo estamos corriendo sobre un dispositivo físico, puede dar un resultado u otro. Me explico, imaginemos que tenemos una pantalla en la que hay un scroll view con un botón abajo del todo. Y lo que queremos verificar es si ese botón es visible.…