Testing avanzado con JUnit 5
En este taller exploraremos las diferentes funcionalidades avanzadas que ofrece el framework de testing más popular para Java,...
Si quieres ampliar tus conocimientos sobre qué es Test Case Management Systems y qué herramientas existen para realizarlo, no dejes de leer este artículo.
Cada proceso involucrado en el desarrollo de software tiene su figura o responsable asociado que normalmente corresponde a una determinada área de servicios. Para una gestión más eficiente del proceso, esta persona decidirá implementar aquella herramienta que mejor le ayude a gestionar dichos procesos.
Si bien existen herramientas que pueden ser utilizadas de forma general por distintas áreas para la gestión de un mismo proyecto también existen aquellas que, de forma particular, están orientadas a ciertos procesos.
Esto no quiere decir que sea correcto o incorrecto utilizar una determinada herramienta, en caso de tener la posibilidad, para la gestión de procesos para lo cual no haya sido pensada; sino que existen múltiples alternativas de índole general y particular cuya elección incluso podrá depender del presupuesto (por ser algunas comerciales y otras de código abierto) con el que se cuente.
TCMS significa Test Case Management Systems y hace referencia a los sistemas que permiten realizar la gestión integral de casos de prueba en un marco de planificación, ejecución, seguimiento y reportes de estado. Esto quiere decir que dichos sistemas fueron pensados para ser utilizados por áreas de Testing y/o Quality Assurance donde cada persona, con su rol asociado, tendrá su tipo de interacción con la herramienta.
El objetivo de la herramienta es que permita gestionar todos los procesos, desde los más simples hasta los más complejos, involucrados en la operatoria y gestión estratégica del área.
Puede considerarse el caso de un tester o analista de calidad que utilizará la herramienta de forma operativa a diario para registrar las ejecuciones y el control de resultados de casos de prueba, mientras que un gerente o manager, se interesará en visualizar el grado de avance y reportes de los proyectos de pruebas.
A casi 20 años de su primera versión, sigue siendo TestLink una de las opciones más vigentes en la elección de un TCMS de código abierto. Este sistema web basado en PHP permite la creación de mútiples proyectos con sus planes, conjuntos y casos de prueba. Por ser de código abierto existe una amplia y activa comunidad tanto de usuarios como desarrolladores que mantienen e intercambian información.
Su sitio oficial ofrece diferentes opciones de descarga mientras que en el foro oficial existe información específica agrupada por temas. En esta sección existe información respecto a su instalación y configuración así como el listado de distintas empresas que utilizan actualmente TestLink.
En situaciones donde sea necesario realizar una gestión detallada y exhaustiva para grandes proyectos de Testing que no cuenten con un presupuesto suficiente para la elección de una herramienta comercial.
Basado en código abierto, y con subscripciones pagas según sea el caso, Kiwi TCMS es una alternativa moderna y atractiva. Su lógica de organización en proyectos y casos de prueba es similar a TestLink aunque con una interfaz renovada. La opción libre requiere la utilización de Docker tal como se detalla en su documentación.
De forma similar al contexto detallado para TestLink sobre grandes proyectos de Testing, con la diferencia de que en este caso existe la necesidad de contar con un presupuesto mínimo en caso de optar por una subscripción paga, o bien, contar con el conocimiento técnico para la instalación, configuración e implementación de la herramienta.
Inicialmente concebida como Mercury QC (Quality Center) es considerada como una herramienta cuyo foco reside en la trazabilidad entre sus módulos de requerimientos, test plan, test lab, defectos y dashboard cuyos usuarios solían ser analistas funcionales, testers, project y qa managers.
Posteriormente, esta herramienta fue adquirida por HP y siendo convertida a HP QC (Quality Center) para finalmente ser una herramienta web conocida actualmente como HP ALM (Application Life Cycle Management) cuyos usuarios pueden ser testers, developers, product owners, business analysts y project managers.
Esta herramienta no sólo busca facilitar los proceso de gestión de Testing sino que su objetivo es más amplio al dar soporte en lo que refiere a la gestión integral de todo el ciclo de desarrollo de software. En términos de tecnología, es una aplicación que se ejecuta en un entorno Java mientras que su base de datos puede ser Microsoft SQL Server u Oracle.
Este es un caso híbrido puesto que Jira es una herramienta de gestión de proyectos sobre la que, a lo sumo, es posible realizar tracking de bugs o defectos. Sin embargo, en su marketplace existe la aplicación Xray (entre otras aplicaciones) que puede descargarse y probarse de forma gratuita por una cierta cantidad de días. Una vez cumplido el plazo, será necesario realizar el cálculo para el costo en que se incurrirá dependiendo de la cantidad de usuarios que utilicen la herramienta.
En una estructura de pruebas organizadas en test plans, folders y sets será posible realizar un seguimiento de la progresión en la gestión de proyectos de Testing habiendo convertido a esta herramienta de gestión de proyectos en un TCMS que incorpora funcionalidades avanzadas como integraciones con diferentes frameworks e integración continua en la automatización de pruebas. En este enlace oficial pueden verse detalles de la integración entre Jira y Xray.
El caso ideal es en el que ya se cuenta con Jira como herramienta para la gestión de proyectos y se decide explorar las capacidades que puede brindar el complemento de Xray como un TCMS embebido en la plataforma.
Existen múltiples sistemas de gestión de proyectos con capacidades para realizar seguimientos de errores. Puesto que el seguimiento de errores es sólo una parte de la gestión de proyectos de Testing, es posible extender estas herramientas a partir de integraciones, considerando algunos de los siguientes casos:
Que podrán ser integrados con una plataforma específica para extender las capacidades en términos de gestión de proyectos de Testing como es el caso de Testuff.
La versatilidad de la herramienta que se define como “SaaS Test Management” puede ser probada de forma gratuita por 30 días y utilizarse de forma paralela las versiones de su cliente web, desktop y múltiples integraciones con bug trackers y test automation tools que ofrece. En el apartado de pricing pueden evaluarse distintas opciones mensuales, anuales o enterprise en caso de haber tomado la decisión de continuar luego del “free trial”.
Contar con una herramienta de gestión de proyectos y seguimiento de errores que necesite ser extendida para cubrir necesidades de gestión de proyectos de Testing tal como un TCMS ofrece.
En caso de no contar con el presupuesto para el licenciamiento de una herramienta para la gestión de proyectos de Testing, o el conocimiento necesario para la implementación de alternativas de código abierto, pueden utilizarse plantillas de cálculo y/o procesadores de texto para confeccionar la documentación y gestión necesaria.
Dentro de las plantillas que Google Sheets ofrece, existen dos alternativas interesantes según sea la necesidad, como puede ser el caso más sencillo de una plantilla para la escritura de los pasos que conforman a un caso de prueba o bien otra plantilla más compleja que se asemejan a la gestión que puede ofrece un TCMS como las métricas y sus gráficos asociados en la pestaña dashboard o el detalle de los casos de prueba en la pestaña test cases.
Se sugiere realizar una copia de la plantilla por parte del usuario para su posterior uso local. La administración de casos de prueba y gestión de proyectos de Testing a partir de la creación de hojas de cálculo como Google Sheets pueden ser una alternativa viable debido a su acceso libre, facilidad de uso y funciones colaborativas, entre otras ventajas, que la plataforma ofrece.
Existen múltiples factores en la elección de una herramienta para la gestión de proyectos de Testing, como pueden ser:
Y cada uno de los factores puede ser determinante en la elección de la misma, a saber:
Esto no quiere decir que existan factores y/o situaciones correctas o incorrectas sino que la elección de una herramienta a implementar para la gestión de proyectos de Testing dependerá de cuál sea la combinación entre factores y situaciones propias de una organización y equipos de trabajo en conjunto.
También te puede interesar
En este taller exploraremos las diferentes funcionalidades avanzadas que ofrece el framework de testing más popular para Java,...
En este taller veremos como hacer testing en Python para asegurarte de que tienes una aplicación robusta.