Tech and Solve

Test Data Management on demand

TDM o Test Data Management por sus siglas en inglés, trae consigo el poder de seleccionar, reservar y eliminar de forma automática sets de datos de pruebas traídos directamente de un ambiente productivo, y enmascarados para proteger información sensible, con la calidad adecuada, la cantidad requerida y el formato correcto, todo dentro del rango de tiempo que el negocio necesita.
La gestión de datos es un punto crítico en el ciclo de vida del testing, por eso, TDM busca reducir el tiempo empleado en el procesamiento de datos contribuyendo a la eficiencia de un producto entero.

¿Sabes cómo hacer TDM?

La implantación de Test Data Management trae consigo tareas de análisis, selección y almacenado de datos.
Los siguientes pasos sirven como guía al momento de incorporar este concepto:
1. Identifica los casos de pruebas más repetitivos y que usen los mismos sets de datos o similares.
2. Enmascara datos traídos de producción o genéralos artificialmente mediante scripts o herramientas especializadas.
3. Prioriza el procesamiento y entrega de datos.
4. Genera reportes y dashboards tanto como para el resultado de las pruebas, como para el uso de sets de datos.
5. Crea e implementa reglas de generación de datos acorde a las necesidades del negocio.
6. Automatiza la preparación, generación, entrega y depuración de datos maestros.
7. Archiva y versiona los datos teniendo en cuenta la edad y el uso.

¿Qué estrategias existen para implementar Test Data Management?

Análisis de datos.
Generalmente los datos de prueba son construidos basados en los casos de prueba. Se debe realizar un análisis exhaustivo de todos los tipos de datos requeridos para realizar una gestión eficaz.
Mirror de producción.
Normalmente es una extensión del método anterior. Por medio de la réplica de datos en producción podemos entender cuál será el escenario del usuario final y qué datos son requeridos para el mismo.
Los mirror de producción son usados para ser comparados contra los datos actuales de ambientes de pruebas. Basados en esta extensión, se generan nuevos datos, o se modifican si es necesario.
Determinar la limpieza de datos.
Basados en los requerimientos de pruebas del ciclo de entrega actual, los datos podrían ser creados o modificados. Estos datos a pesar de que puedan no ser relevantes inmediatamente, pueden ser necesarios en un punto posterior, por lo tanto es importante tener claro cuándo y qué datos limpiar.
Identificar datos sensibles y protegerlos.
Muchas veces se requiere una gran cantidad de datos sensibles. Actualmente los ambientes de prueba en la nube son muy populares, pero garantizar la seguridad básica de datos de usuario se convierte en una preocupación, especialmente cuando se usa una réplica de datos productivos.
En este proceso se debe determinar el mejor mecanismo para proteger los datos de acuerdo al volumen de los mismos. Una buena práctica es identificar los más sensibles y someterlos a un proceso de enmascaramiento: de esta manera se protege la información de los usuarios sin comprometer su integridad.
Automatización.
Al igual que la automatización de diferentes tipos de pruebas, con este proceso también es posible automatizar la generación de datos de pruebas y su enmascaramiento.
Para ayudar a descubrir errores que pueden ocurrir en las pruebas en cuanto a los datos, es posible realizar una comparación de los mismos antes y después de ejecutarlas. Este proceso de comparación también podría ser automatizado.
Actualización de los datos utilizando un repositorio central.
Todos los métodos anteriores, en especial los relacionados con preparación y limpieza de datos, están relacionados con la actualización de datos utilizando un repositorio central. Este último permite ahorrar esfuerzos en cuanto a generación de datos, manteniendo un repositorio central que contenga todos los tipos de datos para diferentes tipos de pruebas.
NOTA: A pesar de que tener un repositorio es buena práctica, mantener una cantidad excesiva de datos innecesarios no solo aumenta el crecimiento de storage, también complica cada vez más obtener los datos adecuados para una prueba en cuestión, por eso te recomendamos hacer un mantenimientos y depuraciones de las versiones.
Autor: Juan Esteban Echavarría