Para ofrecer un software de calidad debemos garantizar la optimización en los procesos automáticos, así como mantener el software testeado exhaustivamente, generando análisis y resultados que nos ayuden a detectar con éxito los potenciales errores.
Por tanto, el uso de soluciones y herramientas para la gestión de pruebas es crucial para la creación de planes y estrategias de testing para nuestro software.
En WATA Factory, Xray nos proporciona las herramientas óptimas para estructurar, organizar y reportar la ejecución de pruebas manuales y automáticas en nuestros sistemas.
¿Qué es Xray for Jira?
Xray es un add-on de Jira que nos ayuda a seguir todo el ciclo de vida de testing: planificación, diseño, ejecución y generación de reportes. Todo ello con la generación de gráficos e informes muy detallados como resultado. Gracias a esta solución, los managers y testers pueden mejorar la gestión de los proyectos (o evolución de productos) y su flujo de trabajo al verificar el estado de los requisitos, y el progreso de las ejecuciones de las pruebas.
La integración de Xray con Jira nos permite indexar pruebas en tiempo real y tomar el control de todo el proceso de testing para obtener una cobertura total, detectando problemas rápidamente. Además, Xray es compatible con la metodología BDD y la integración continua (CI) a través de tecnologías como Cucumber y Jenkins.
¿Qué tipos de issues nos proporciona Xray?
Cuando integramos Xray en Jira se nos abre la posibilidad de crear nuevos tipos de issues, con los cuales podemos definir las fases principales del ciclo de vida del testing.
Dependiendo de la fase del plan de pruebas en la que nos encontremos, podemos usar los siguientes tipos de issues para testing:
Test Planning
- Test Plan. Permite tener una mejor gestión de nuestras pruebas y nos proporciona una tabla que muestra todas las pruebas añadidas al test plan.
Test Designing
- Precondition. Ayuda a especificar las condiciones que deben cumplirse para poder ejecutar una prueba.
- Test. Se trata de la issue principal para crear nuestras pruebas como una secuencia de pasos, junto a las condiciones, inputs y resultado esperado de la prueba.
- Test Set. Permite organizar un conjunto de pruebas.
Test Execution and Reporting
- Test execution. Esta issue posibilita la monitorización de una colección de pruebas para verificar si dichas pruebas están funcionando como se espera, en un determinado contexto y entorno. Además, la ejecución de las pruebas a través de esta issue genera los reportes de las mismas para mostrar la cobertura de requisitos de nuestro proyecto.
¿Cómo usar Xray?
Para llevar a cabo el proceso de creación de un entorno de testing para nuestro proyecto con Xray, lo usual es seguir los siguientes pasos:
1. Especificación de las pruebas
Xray nos permite crear tres tipos diferentes de pruebas: Manual, Generic y Cucumber.
Las pruebas de tipo Manual en Xray son aquellas que nos permiten definir manualmente la lista de pasos, escribir una descripción de la prueba, especificar la versión del software y reportar los resultados.
La creación de pruebas automáticas en Xray se puede realizar con pruebas de tipo Generic y Cucumber.
Mientras que las de tipo Generic nos permiten crear pruebas no estructuradas y sin pasos, las pruebas de tipo Cucumber se pueden definir de un modo comprensible tanto para el equipo técnico como para la parte de negocio, basándose en el desarrollo guiado por el comportamiento (BDD) a través del lenguaje Gherkin.
Cabe destacar que las pruebas de tipo Generic también pueden utilizarse para pruebas manuales (como por ejemplo en las pruebas exploratorias).
2. Organización de las pruebas
La organización de las pruebas es un paso importante a la hora de gestionar el entorno de testing de nuestro proyecto, ya que el número de pruebas tiende a crecer considerablemente. Una buena organización nos permitirá encontrar cada prueba de forma eficiente.
Con Xray podemos organizar nuestras pruebas con la issue Test Set y/o el uso de los Test Repository.
La issue Test Set permite crear listas de pruebas agrupadas según una lógica, y que podemos utilizar como base para la creación de Test Executions o Test Plans. Podemos realizar múltiples combinaciones de Test Sets en función de las necesidades del entorno de testing de nuestro proyecto.
El uso del Test Repository de Xray nos ayuda a organizar nuestras pruebas en base a una estructura jerárquica de carpetas y subcarpetas en forma de árbol, proporcionando una mejor visibilidad de nuestras pruebas y sus ejecuciones.
3. Planificación de las pruebas
La fase de planificación de pruebas es crucial para definir una buena estrategia de pruebas en nuestro proyecto en base a ciertos aspectos, tales como los requisitos que queremos validar y cómo validarlos, los tipos de pruebas que se van a desarrollar, las asignaciones de recursos o el plan de ejecución.
Para ello, Xray nos permite utilizar la issue Test Plan, en la que podemos seleccionar todas las pruebas que queremos ubicar en un determinado plan. Esta issue nos proporciona una tabla que muestra las pruebas asociadas al plan y sus ejecuciones.
4. Ejecución de las pruebas
Una vez que tenemos definidas nuestras pruebas y conjuntos de pruebas, podemos llevar a cabo la ejecución de las mismas. La issue Test Execution de Xray monitoriza y verifica si las pruebas que han sido seleccionadas para ser ejecutadas han pasado o no, y de darse el primer caso, se validará la ejecución.
El resultado de la ejecución nos informa del progreso de la misma por cada prueba superada, fallida o en espera de ser ejecutada. Cada prueba tiene sus propios detalles de ejecución, lo que facilita el seguimiento del progreso y los resultados de la ejecución.
En el caso de las pruebas manuales, una vez han sido ejecutadas en el entorno correspondiente, se definirá el estado de la ejecución manualmente en el Test Execution.
Por otro lado, si la ejecución de las pruebas automáticas se realiza por Integración Continua (CI), los Test Executions se generarán automáticamente con los resultados de las pruebas.
5. Análisis de las ejecuciones de las pruebas
Xray nos proporciona un Dashboard intuitivo y descriptivo para analizar y evaluar los resultados de las pruebas. Los Test Executions generan automáticamente estadísticas y diagramas que nos muestran un resumen detallado de las pruebas que han pasado y han fallado en nuestro proyecto.
Esto permite a desarrolladores y testers examinar con precisión la ejecución de nuestras pruebas y monitorizar la cobertura de nuestro entorno de testing.
Por otro lado, el Dashboard de Xray es una forma ideal de presentar el estado del proyecto a nuestros clientes, con el fin de fomentar una comunicación y cooperación transparente y de confianza.
Xray en WATA Factory
En WATA Factory definimos nuestros entornos de testing en torno a las herramientas y soluciones proporcionadas por Xray for Jira, con el fin de ofrecer software de calidad basado en estrategias de testing automatizadas, organizadas y robustas.