Pros y Contras - dcastrog2uniandes/Ghost GitHub Wiki

Análisis y comentarios de las herramientas

Kraken

Pros

  • Fácilidad en la definción y escritura de las pruebas al utilizar sintaxis Gherkin la cual se basa en lenguaje natural.
  • Generación de reportes detallados en HTML y screentshots, que facilitan la lectura y análisis de los resultados de las pruebas.
  • Permite usar diferentes tipos de selectores para lograr la ejecución de las pruebas.

Contras

  • Es necesario instalar dependencias extra para que funcione, por ejemplo, adb
  • Dependiendo el sistema operativo se necesitan realizar diferentes configuraciones o instalación de otras depencias o plugins.
  • La documentación es escasa y se encuentra desactualizada.
  • No existe una gran comunidad que de soporte para su continuo mejoramiento.
  • No es posible ejecutar todas las pruebas en paralelo, toca una a una (por lo menos en S.O Windows)

Cypress

Pros

  • Curva de aprendizaje baja
  • Soportado por la comunidad
  • Gran cantidad de métodos que facilitan la definición y escritura de las pruebas
  • Fácil instalación
  • Varios modos de ejecución de las pruebas (headles o usando el cliente)
  • Generación de videos que permite visualizar posteriormente la prueba
  • Facilidad para hacer debuggin directamente en el navegador

Contras

  • Dificultad para acceder a los diferentes elementos html mediante algunos los selectores
  • Dificultad para integrar otros modulos

Monkeys

Pros

  • Bajos costos de implementación
  • Facilidad para generar altos volúmenes de eventos en las pruebas
  • No se requiere tener conocimiento previo del software
  • Rapidez para encontrar errores o fallas
  • Cuando se utiliza el monkey test es posible identificar casos de prueba que no se le hubieran ocurrido a una persona

Contras

  • No son útiles para diferentes tamaños de pantalla pues se pueden quedar atascados al no saber cómo continuar
  • Alto tasa de eventos fallidos (Flaky)
  • En muchos casos las pruebas se quedan estancadas porque no puede identificar el flujo correcto para una pantalla
  • Bajo nivel de cobertura y baja tasa de errores encontrados
  • El análisis de los errores encontrados es difícil y complejo de analizar
  • Pueden durar mucho tiempo en encontrar un error

Rippers

Pros

  • Ayudan a generar el mapa de navegación de la aplicación rápidamente
  • Ayudan a explorar según los niveles de profundidad deseado
  • No se requiere tener conocimiento previo del software
  • Mayor cobertura del código

Contras

  • Deben ser ejecutados con más tiempo de máquina pues su ejecución es más lenta
  • Se requiere una maquina dedicada a la labor por su alto consumo de memoria

VRT

Pros

  • Fácil instalación.
  • Se requiere únicamente de un archivo para definir y ejecutar las pruebas.
  • No es necesario definir las pruebas E2E en el código, únicamente con las imágenes que se quieren comparar es suficiente.
  • Fácil generación de reportes en formato HTML
  • Bastante documentación y ejemplos
  • Soportada por la comunidad

Contras

  • Puede que en casos donde la cantidad de imágenes a comprar sea significativa, puede ser lenta, sin embargo, para nuestro caso de uso no se evidencio mayor lentitud.