Carrito de compras

Ventajas de los reportes de pruebas automatizadas en equipos ágiles

06 abr. Analisis

Actualmente existen muchísimas organizaciones que trabajan con marcos de trabajo o desarrollo ágil, para gestionar el ciclo de vida de sus diferentes productos y proyectos. Pero a pesar de esto, también es cierto decir, que muchas de ellas, por diferentes circunstancias no logran responder a la gran exigencia que genera el mercado, sobre todo tratándose de tecnología.

Es bien conocido que marcos de trabajo como Scrum, Kanban y Programación Extrema (XP) entre otros, ofrecen numerosas bondades dentro de las cuales podemos mencionar:

  • Transparencia en cualquier momento del proyecto.
  • Retroalimentación temprana.
  • Respuesta al cambio.

Dado que dichas bondades son adoptadas por el Manifiesto ágil.

Con lo anterior expuesto, los equipos de desarrollo de software deben afrontar diversos retos, con el fin de ofrecer a los clientes de las organizaciones, productos con valor en las diferentes iteraciones, cumpliendo así con tareas de desarrollo, aplicando posibles cambios al producto en construcción, y sobre todo asegurando que el producto cumpla con los requisitos de calidad tanto funcionales como no funcionales.

¿Cómo entregar software de calidad en un marco de trabajo ágil?

Un marco de trabajo o desarrollo ágil nos permite crear producto con un alto nivel de calidad, es importante mencionar que, dentro de un marco de trabajo ágil, la calidad nunca será negociable, tal y como lo indican los principios del Manifiesto ágil, la principal prioridad es satisfacer al cliente, mediante la entrega continua y temprana de un producto con valor agregado.

Por ello, se debe brindar especial atención al diseño y ejecución de las pruebas, como lo son pruebas unitarias, pruebas de componentes, pruebas funcionales, pruebas exploratorias, pruebas de carga, pruebas de seguridad, entre otras. Sin lugar a duda, las tareas de aseguramiento de calidad en los proyectos de calidad, aunado a un marco de desarrollo ágil, tiene como objetivo principal el detectar errores en las fases tempranas, con el fin de corregir en etapas previas a una entrega. Actualmente los equipos, dedican tiempo a la automatización de pruebas, con el propósito de asegurar que el producto que ya ha sido revisado y aprobado, no se vean afectado por la inclusión de nuevas características al proyecto.

¿Qué herramienta utilizar para mis pruebas automatizadas de UI?

Hoy en día existen muchas herramientas que permiten la automatización de las pruebas de interfaz de usuario, algunas de estas pueden ser herramientas de pago u open source, entre ellas podemos mencionas las siguientes:

  • Selenium Framework
  • Katalon Studio
  • Cypress
  • Robot Framework
  • Protactor para aplicaciones angular
  • Appium para aplicaciones móviles
  • Entre otras

¿Cómo obtengo reportes de mis pruebas automatizadas?

Continuando con el marco de desarrollo ágil, un aspecto de sumo interés, para desarrolladores, evaluadores, administradores de proyecto, entre otros, es sin lugar a duda el resultado de las pruebas automatizadas, más aún si el proyecto se encuentra en sus últimas etapas. Los reportes de pruebas automatizadas son de mucha importancia ya que mediante de ellos se puede obtener feedback en cualquier momento, sobre el estado actual de un proyecto, en cuestión de minutos, y de esta forma se optimiza el tiempo de las personas interesadas.

En esta oportunidad, mencionaremos una forma básica para iniciar la creación de nuestros reportes de pruebas automatizadas, con la integración de Python, UnitTest, Selenium y HtmlTestRunner. Haciendo uso del lenguaje de programación Python, y demás herramientas previamente mencionadas, hemos creado un proyecto en el cual tenemos recopilados todos nuestros scripts de prueba. Una vez contamos con estos insumos UnitTest nos ofrece la posibilidad de crear nuestra suite de pruebas, lo cual lo hacemos desde un archivo Python, ubicado en la raíz de nuestro proyecto, como se muestra a continuación:

Agregamos las instrucciones para hacer uso de HtmlTestRunner, como se ve a continuación:

Finalmente, al ejecutar nuestro archivo Python, que contiene nuestra suite de pruebas, comenzará a ejecutar una a una, de nuestras pruebas, y obtendremos nuestro reporte, como se muestra a continuación:

¿Qué podemos concluir?

Las pruebas de calidad son parte integral de un producto, independiente del marco de trabajo, y el uso de la reportería incrementa la efectividad para el seguimiento de las actividades que realizan los miembros del equipo en general. Asimismo, la selección de herramientas depende mucho de los procesos internos de cada organización, sin embargo, la inclusión de estas, brindaran un impacto positivo, en la reducción de esfuerzo y tiempo invertido, en las actividades de pruebas de producto.

Referencia bibliográfica

  • ISTQB Foundation Level Syllabus – Agile Tester - Versión 2018
  • https://pypi.org/project/html-testRunner/
Carlos Alberto Díaz Pintor | QA Engineer Consultant | Ingeniero en sistemas informáticos

¿Te gustó? Entonces comparte la publicación: