Comparativa de marcos para la automatización de pruebas para aplicaciones móviles: Calabash vs Appium

Como ya sabréis, alguno de mis compañeros de 233 Grados de TI estuvieron este verano en la conferencia Agile 2015 Washington D.C. #Agile2015 (Javier ya dejó un post sobre ello, aquel de Agile 2015 Washington D.C. #Agile2015), y uno de los temas que se trató mucho fue el testing, y en este caso concreto, la automatización de pruebas de aceptación para aplicaciones móviles en entornos ágiles.
Y ya no solo es un tema que se trató en la conferencia, personalmente cada vez es mayor la necesidad de llevar a cabo esta buena práctica en importantes organizaciones y de hecho es una de las actividades profesionales en las que ahora estoy metida.

11825683_461340657379591_7172595970680795340_n
Foto tomada por Javier Garzás del creador de Calabash dando una charla en Agile 2015 Washington

 
Hará hace un mes aproximadamente escribí una serie de dos post sobre Calabash (te dejo los link de la parte 1 y de la parte 2 de la serie) y comenté que más adelante quizá me animaba a escribir un post comparando algunas herramientas para la automatización de pruebas móviles. Bien, pues en relación con lo anterior, ese día ha llegado.
A parte de Calabash, obviamente, hay otras herramientas para la automatización de pruebas móviles, destacando, como por ejemplo, Appium y Robotium, entre otras. En este post voy a hacer una comparativa muy sintetizada entre Calabash y Appium ya que son las herramientas más sonadas a día de hoy para la automatización.
No voy a entrar en ventajas o limitaciones (pros o contras) de las herramientas puesto que lo que para unos puede ser una ventaja para otros puede ser una limitación. De esta manera podremos ver cuál de las dos herramientas se adapta mejor a nuestras necesidades.

Calabash

Como ya comenté en Pruebas automatizadas para aplicaciones móviles: Calabash for dummies, Calabash es un framework open source que básicamente lo que es hace es lanzar de manera automatizada interacciones de interfaz de usuario, no me extiendo más aquí ya que puedes leer más sobre Calabash en los dos post que te he dejado al comienzo.

Appium

Appium también es una herramienta open source para la automatización de pruebas para aplicaciones web móviles, nativas e híbridas, basada en el popular framework de testeo, Selenium.
Appium fue diseñado para satisfacer las necesidades de automatización de pruebas móviles de acuerdo con una filosofía esbozada por los siguientes cuatro principios:

  • No tener que recompilar o modificar la aplicación a automatizar .
  • No tener que trabajar solo en un idioma o marco específico para escribir y ejecutar las pruebas .
  • Un framework de automatización de pruebas móviles no debe reinventar la rueda.
  • Un framework de automatización de pruebas móviles debe ser de código abierto.

Puedes leer más sobre Appium aquí.

Calabash vs Appium

En la siguiente tabla os voy a dejar una comparación entre estas dos herramientas para automatizar aplicaciones móviles, Calabash y Appium.

Calabash Appium
Open source, Cross Platform Open source, Cross Platform
Plataformas compatibles: Android, IOs Plataformas compatibles: Android, IOs, FirefoxOS
Arquitectura basada en HTTP Arquitectura basada en HTTP
Pruebas escritas en Ruby y Java Pruebas escritas usando cualquier lenguaje compatible a Selenium WebDriver
Test framework: Cucumber Test Framework: agnóstico, es una herramienta de automatización no solo para testing
App nativas e híbridas App nativas e híbridas y web para móviles
API y sistemas de consulta especializados
Soporta todas las versiones de Android e IOs Soporta Android 4.2 o superior (usando el control de dispositivos a través de Google’s UiAutomator) o Android 2.3 o superior ( usando Google’s Instrumentation)
La documentación no es buena La documentación tampoco es muy buena

¿Cuál debería elegir?

Si conocías la existencia de estas herramientas, pero no sabes cuál se adapta mejor a tus necesidades, yo elegiría:

  • Appium, si prefieres una herramienta menos restrictiva en cuanto a lenguajes, si tienes conocimientos sobre Selenium (usando Appium puedes aprovechar esos conocimientos) y si quieres probar un sitio web para móviles, además de aplicaciones nativas e híbridas.
  • Calabash, si prefieres una herramienta más enfocada a BDD (recuerda lo qué se ha hablado sobre BDD en el blog) con Ruby y Cucumber y además tienes experiencia y conocimiento en ello.

 
Si no conocías la existencia de estas herramientas, en caso de duda, en mi opinión, Calabash es más fácil de aprender para empezar y si tienes experiencia con Capybara en BDD (os dejo un link sobre Capybara), es exactamente la misma estructura.

0 comentarios en “Comparativa de marcos para la automatización de pruebas para aplicaciones móviles: Calabash vs Appium”

  1. Estuve trabajando con Appium y es muy similar a lo que vemos en selenium. Vale aclarar que estas herramientas permiten el uso de Emuladores para su ejecución como GenyMotion o el propio ADV de android.¿No se si sea el medio adecuado, pero no se se se pueda realizar pruebas emuladas en IOS? Gracias.

  2. Hola amigos, me interesó el tema, me gustaría probar Appium, tienen algún manual de isntalación para realizar pruebas a móviles, ya que solo he encontrado una muy tediosa.
    Saludos.

Deja un comentario

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *

Share This
Ir arriba