Las pruebas nos proporcionan información objetiva sobre la calidad del producto que se está realizando. Por ello, es importante comenzarlas en una fase temprana dentro del ciclo de vida del software. “El comienzo es más de la mitad de la totalidad” [Aristóteles (384 a.C. – 322 a.C.), filósofo griego]
La metodología de pruebas que utilizamos es TMap® (Test Management Approach) registrada por SOGETI y un estándar en el mundo de las pruebas. Se focaliza en realizar un proceso de pruebas transparente, reduciendo los riesgos y aumentando la calidad, aspectos clave en nuestro trabajo diario. Pero, ¿Cómo se materializan estos aspectos?
¿Cómo se consigue realizar un proceso de pruebas transparente?
Informando objetivamente en cada fase del ciclo de vida de:
- La calidad y riesgos del producto
- Progreso y proceso de pruebas
Para esta tarea es útil disponer de una herramienta que facilite la comunicación de todas las personas implicadas en el proceso de creación del producto y que toda la documentación esté actualizada y sea accesible en cualquier momento.
La herramienta que utilizamos actualmente para la gestión, diseño y ejecución de pruebas es Microsoft Test Manager, herramienta integrada dentro de Visual Studio Team Foundation.
Normalmente la información de pruebas no se centraliza en un único sitio y si TFS ha sido adaptado a las necesidades organizativas del cliente, puede que los informes predefinidos no satisfagan las necesidades del proyecto. En esta línea y con este artículo se pretende ayudar a aquellos profesionales que quieran realizar informes de pruebas con estas herramientas.
¿Desde dónde podemos obtener información de nuestros casos de prueba y defectos?
Podemos obtener información de nuestros casos de prueba y defectos a través de:
- Microsoft Test Manager
- Microsoft Visual Studio
- Excel
- Generador de informes (Report Builder)
- Diseñador de informes (Report Designer)
¿Qué información obtenemos desde cada herramienta?
Necesitamos conocer los orígenes de los datos en Team Foundation Server para saber qué tipo de información se obtiene desde las distintas herramientas. (https://msdn.microsoft.com/es-es/library/ms252473.aspx)
Team Foundation Server consta de varias bases de datos SQL Server.
TFS_Configuration: Contiene la información imprescindible para que funcione Team Foundation Server, configuración de los recursos, seguridad, jobs, notificaciones,… etc.
TFS_CollectionName: Base de datos individuales (OnLine Transaction Processing) de las distintas colecciones de proyectos de equipos (Work Items, control de versiones, builds….)
TFS_Warehouse: Base de datos para consultas e informes. Recoge los datos de las distintas TFS_CollectionName y se actualiza cada dos minutos.
TFS_Analysis: Cubo que contiene información de datos agregados de colecciones de proyectos de equipos, se actualiza cada 2 horas, pudiéndose cambiar el tiempo de refresco del mismo.
Selección de herramienta para obtener datos de prueba:
Microsoft Test Manager (MTM): Con esta herramienta consultamos el progreso del plan de pruebas navegando a través de las distintas pestañas:
Plan: Muestran todos los casos de prueba agrupados en conjuntos de pruebas o Test Suites.
Test: Muestra el estado de ejecución de los casos de pruebas por escenario de pruebas.
Seguimiento: A través de consultas personalizada podemos localizar y buscar Work Items como casos de prueba, defectos, requisitos, tareas, etc.
Esquema de las principales entidades donde se almacenan datos de prueba en Microsoft Test Manager:
Los siguientes elementos de prueba:
- Test Plan : Plan de pruebas
- Test Suites: Conjunto de pruebas
- Test Results: Resultado de ejecución de los casos de pruebas (Pendiente de Ejecución, Ejecutado, Bloqueado, Con Error, En Curso)
- Test Configuration: Configuración de pruebas
No pueden obtenerse a través de consultas personalizadas debido a que no son Work Items. Por ello, no podremos obtener el estado de progreso de un Plan de Pruebas, ni saber cuál es el escenario de pruebas (Test Configuration) con más casos de pruebas fallidos.
Microsoft Visual Studio: Ofrece la posibilidad de realizar consultas personalizadas al igual que desde Microsoft Test Manager para obtener datos de Work Items.
Excel: Permite la consulta de toda la información referente a pruebas accediendo a las distintas bases de datos: TFS_Warehouse y TFS_Analysis. También podremos realizar consultas personalizadas como en Microsoft Visual Studio y Microsoft Test Manager.
- Para realizar una consulta personalizada (https://msdn.microsoft.com/es-es/library/dd433251.aspx) deberemos conectarnos a Team Foundation Server y seleccionar el Team Collection del que queremos obtener información.
Tendremos en cuenta que existen determinados campos de tipo HTML de los Work Items que no pueden consultarse, por ejemplo:
Descripción
Historial
Pasos de un caso de prueba
- Cubo TFS_Analysis: Podremos obtener toda la información relacionada con el progreso de las pruebas a través del cubo OLAP.
Deberemos tener en cuenta el refresco del cubo que se realiza cada 2 horas.
- Base de datos TFS_Warehouse: Nos permite consultar datos de pruebas a través de entidades específicas, o si disponemos de la utilidad PowerPivot[1] podremos seleccionar varias entidades a importar y así obtener la información deseada.
O también, realizar una consulta SQL con la unión de varias entidades.
Generador de Informes (Report Builder): Con esta herramienta, obtendremos toda la información de pruebas accediendo al Cubo de datos OLAP (TFS_Analysis) o a la Base de Datos (TFS_Warehouse).
Diseñador de Informes (Report Designer): Herramienta proporcionada por Visual Studio. Obtendremos toda la información de pruebas accediendo al Cubo de datos OLAP (TFS_Analysis) o a la Base de Datos (TFS_Warehouse). Herramienta orientada a desarrolladores.
¿Cómo crear un informe con Report Builder?
Para crear un informe con Report Builder se deberá establecer una conexión a Team Foundation Server y seleccionar el catalogo de datos (Base de datos).
Se diseñará el informe según las necesidades y se realizarán consultas personalizadas a través de Datasets para obtener la información de la Base de Datos a mostrar.
Se podrán establecer parámetros de búsqueda que se solicitarán cuando se genere el informe dotándolo de gran versatilidad.
Dentro de TFS_Warehouse las siguientes vistas son las que nos proporcionan una información muy detallada del progreso del plan de pruebas.
Conclusión
Una vez analizadas las distintas herramientas para obtener datos de pruebas, exponemos las razones por las que es interesante realizar informes personalizados con Report Builder:
- Si TFS se personaliza para adaptarse a las necesidades del cliente, puede que los informes predefinidos no sirvan.
- Necesidad de crear nuevos informes que se ajusten a la metodología de pruebas empleada.
- El refresco del cubo TFS_Analysis se realiza cada dos horas, lo que puede obstaculizar la coordinación del equipo de pruebas para realizar un seguimiento del mismo.
- Algunos campos de los Work Item con formato HTML no pueden ser consultados.
- Excel permite acceder a TFS_Warehouse, además con el complemento PowerPivot podemos seleccionar distintas entidades de la base de datos. Las entidades seleccionadas se importarán localmente y sobre ellas se podrán establecer relaciones. Con Report Builder obtenemos los datos a mostrar en el informe de la ejecución de consultas SQL donde es sencillo establecer parámetros dinámicos de búsqueda.
[1] PowerPivot: Complemento de análisis de datos, que permite generar informes que combinan datos de otros almacenes de datos o bases de datos de Team Foundation Server.
Mª Isabel Rodríguez Fernández
Ingeniera de test senior en SOGETI
0 comments on “Reporting efectivo y eficiente: Informes personalizados de prueba”