Herramientas para las pruebas - maridelvalle15/ghost-automated-tests GitHub Wiki
Herramientas utilizadas para las pruebas
Las herramientas utilizadas para la implementación de las pruebas automatizadas fueron Cypress y Kraken. A continuación se detallan los pros y contras de cada una de ellas.
Cypress
Pros
- Permite ejecutar pruebas de forma automatizada, lo cual puede ahorrar tiempos y costos
- Amplia documentación y material para comprender el uso de esta herramienta
- Facilidad en el uso, especialmente en el hecho de que no existe un desgaste en instalación, es simplemente descargar un paquete de internet y abrir el ejecutable
- El uso de la herramienta es gratuito, esto puede ser un plus para que las empresas decidan utilizarlo
- Una vez ejecutada la prueba se puede hacer seguimiento paso a paso (debug) para identificar en qué instrucción falla la prueba e intuir mejor el error, además la herramienta proporciona indicaciones a cerca del error.
Contras
- Las pruebas se escriben en un lenguaje técnico, por lo que puede ser difícil comprenderlas por parte del personal no técnico
- A pesar de la amplia documentación, se requiere de experticia para poder interpretar los fallos y corregir las pruebas
- Para una persona junior la curva de aprendizaje puede ser demorada, es mejor que se acompañe de un experto mientras adquiere la habilidad en el uso de la herramienta y construcción de las pruebas
- Ante cambios muy drásticos en la aplicación (GUI) las pruebas pueden fallar y se puede llegar a requerir una reescritura o reelaboración
Kraken
Pros
- Facilita la implementación de pruebas e2e para aplicaciones web
- Permite la ejecución de múltiples pruebas en un tiempo menor del que podría ejecutarlo una persona
- Permite ejecutar pruebas en un horario en el que una persona quizás no podría (por ejemplo horas de noche o fuera del horario laboral)
- Permite hacer pruebas tanto para aplicaciones web como mobile
- Al utilizar Gherkin facilita la definición de los escenarios para las pruebas, y esto ayuda a presentar los escenarios a personas no técnicas
Contras
- Si un escenario falla a veces es difícil saber por qué ya que no se muestra suficiente detalle del fallo
- Al no estar en su versión definitiva se hizo necesario reportar bugs para su revisión
- Si no se tiene conocimiento del funcionamiento de la herramienta o de la sintaxis utilizada, la implementación de las pruebas puede ser lenta
- Se requiere hacer mucha configuración previa al uso de la herramienta
- Al depender muchas veces del ensayo y el error para hacer ajustes en las pruebas, al requerir que se ejecute nuevamente cada prueba puede hacerse lento el proceso de implementación