test data management concept
En el último tutorial, nos centramos en cómo preparar el banco de pruebas para minimizar los defectos del entorno de prueba . Continuando con el mismo tutorial, hoy aprenderemos cómo configurar y mantener el entorno de prueba yGestión de datos de pruebaTécnicas
Proceso de configuración del entorno de prueba
El factor más importante para el entorno de prueba es replicarlo lo más cerca posible del entorno del usuario final. Por lo general, no se espera que los usuarios finales realicen ninguna configuración o instalación por sí mismos, ya que se les envía un producto o sistema completo. Por lo tanto, por Esa definición, incluso los equipos de prueba no necesitan realizar explícitamente tales configuraciones.
Si alguna de estas configuraciones es necesaria con fines puramente de prueba (pero se configurará para usuarios finales), entonces se debe identificar a los administradores. Los administradores que configuran el entorno de desarrollo deben ser las mismas personas que configuran el entorno de prueba.
Si el propio equipo de desarrollo toma la iniciativa en la instalación / configuración, entonces debe ayudar a hacer lo mismo incluso en el entorno de prueba.
Por ejemplo, si tiene que probar una aplicación (con su middleware asociado para ser instalado y configurado) en un sistema a través de varias plataformas de SO, etc., la mejor manera de abordar esto es usar entornos de virtualización o nube .
Tener un sistema maestro en el que todas las aplicaciones y el middleware necesarios estén correctamente instalados y configurados. Luego, haga de este sistema una imagen maestra capturándolo y clone varias instancias de esta misma imagen de modo que cada usuario sienta que tiene un sistema dedicado con la aplicación bajo prueba.
A continuación, se muestra una descripción gráfica de lo que implicaría un proceso de entorno de prueba:
Proceso de configuración del entorno de prueba
Lo que vas a aprender:
Mantenimiento de un entorno de prueba
Se ha dicho tanto sobre la preparación del entorno de prueba, a pesar de los desafíos, sin duda, esto es más que un motivo para necesitar el mantenimiento o estandarizar el entorno de prueba. Muchas veces, un evaluador pierde tiempo de prueba debido al entorno o problemas de configuración.
Con un rápido aumento de los sistemas operativos y la gama de hardware y software, el entorno tiene que ser de naturaleza casi dinámica para poder hacer frente a las necesidades. Los equipos de prueba pueden asegurarse de que están entregando un producto de alta calidad con un buen proceso de gestión de pruebas y esto ayudaría a tener un uso óptimo de los recursos que están disponibles de forma limitada.
Consejos clave para garantizar un mantenimiento eficaz del entorno de prueba
Como entornos de prueba, la mayoría de las veces contienen plataformas y pilas heterogéneas, a continuación se presentan algunos consejos clave para garantizar un mantenimiento eficaz del entorno de prueba.
# 1) Intercambio y distribución ambiental eficaz:
Como ya se mencionó anteriormente, uno de los desafíos clave de la preparación del entorno de prueba es que muchos equipos o personas necesitan usar el mismo conjunto de recursos para sus propósitos de prueba. Por lo tanto, es necesario desarrollar un mecanismo de intercambio adecuado que satisfaga las necesidades de todos los equipos y personas sin retrasar los horarios.
Esto se puede lograr manteniendo un repositorio o enlace de información donde todos los datos relacionados con:
- quién está usando el medio ambiente,
- cuando el medio ambiente es libre de ser utilizado y
- cómo se ingresa con precisión la distribución del tiempo de uso del medio ambiente.
Al determinar de manera proactiva dónde es grande el requerimiento de recursos en comparación con la disponibilidad limitada de los mismos, una gran cantidad de caos se anula automáticamente.
El segundo aspecto de esto es revisar los requisitos de recursos de los equipos para cada ciclo de prueba y busque qué recursos no se utilizan mucho. Analice si esos recursos particulares se pueden reemplazar con nuevos recursos o sistemas que puedan ser necesarios.
# 2) Controles de cordura:
Algunos requisitos de prueba necesitan una configuración o configuración de prueba completa que implica pasos elaborados que requieren mucho tiempo. Este es específicamente el caso durante la prueba de extremo a extremo que involucra dos o más componentes para trabajar juntos. Por lo tanto, es posible que varios equipos necesiten reutilizar el mismo entorno de prueba.
En tales casos, tener una buena comprensión de todo el entorno en su conjunto, cotejar qué tipo de pruebas están realizando varios equipos, dará una imagen razonable para ayudar a proporcionar esos recursos específicos a los equipos respectivos.
Teniendo en cuenta los factores anteriores, se pueden realizar pruebas básicas de cordura que ayudarán a agilizar las pruebas para equipos individuales o alertarlos inmediatamente si el entorno tiene que sufrir algunos cambios o correcciones como resultado de esas verificaciones de cordura.
# 3) Seguimiento de las interrupciones:
Al igual que todo equipo que posee un entorno de prueba tiene el suyo, una organización tiene todos los entornos de prueba posibles mantenidos por un equipo de soporte global.
Además, al igual que los equipos que poseen su entorno de prueba tienen su propio tiempo de inactividad local en caso de actualizaciones de firmware / software, los equipos globales también deben asegurarse de que todos los entornos cumplan con los últimos estándares que pueden implicar cortes de energía o de red.
Por lo tanto, quienes mantienen el entorno de prueba deben estar atentos a cualquier interrupción que pueda ocurrir e informar al equipo de prueba de antemano para planificar su trabajo en consecuencia.
# 4) Virtualice siempre que sea posible:
De nuevo, esto es muy relevante cuando las pruebas deben realizarse compartiendo el entorno y existe una necesidad imperiosa de optimización de recursos. En esos momentos, la respuesta es utilizar un entorno virtualizado como una nube para realizar pruebas.
Cuando se utiliza un entorno de este tipo, todo lo que los probadores deben hacer es proporcionar una instancia instantánea y, una vez aprovisionada, formará un banco de pruebas independiente o un entorno de prueba que contiene todos los recursos diversos, como un sistema operativo dedicado, base de datos, middleware, marcos de automatización , etc. necesarios para la prueba.
Una vez concluidas las pruebas, estas instancias pueden destruirse, lo que reduce considerablemente los costos para una organización. Los entornos en la nube son particularmente útiles para las pruebas de verificación funcional, áreas de pruebas de automatización.
# 5) Prueba de regresión / automatización:
el mejor software gratuito de recuperación de datos de windows 10
A medida que se desarrollan nuevas funciones y características, pruebas de regresión deben realizarse para estas funciones para cada ciclo de lanzamiento. Por lo tanto, aunque en la parte posterior, los entornos de prueba para las pruebas de regresión parecen ejecutarse en la misma configuración de prueba con los mismos datos, en realidad están evolucionando constantemente en cada versión de acuerdo con las características que se implementan también.
Cada ciclo de lanzamiento de productos tendría una o más rondas de pruebas de regresión. Por lo tanto, establecer entornos de prueba de regresión para cada ciclo de lanzamiento de productos y reutilizarlos dentro del ciclo definitivamente representaría la estabilidad del entorno de prueba.
El desarrollo de marcos de automatización y el uso de la automatización para pruebas regresivas también ayudan a mejorar la eficiencia de un entorno de prueba porque la automatización asumirá que el entorno es estable y que los defectos que se originan están puramente orientados a funciones / códigos.
# 6) Gobernanza general:
Cuando hay algunos problemas con el hardware o el software del entorno de prueba, estos problemas deben dirigirse a las personas adecuadas para garantizar que se solucionen si los que mantienen el laboratorio no pueden solucionarlos internamente.
Por ejemplo, Si alguna prueba origina un defecto que comprende una limitación en el firmware o el software que se está utilizando en el entorno actual, esto generalmente no puede ser solucionado únicamente por los responsables del mantenimiento del entorno.
Por lo tanto, se debe solicitar al consumidor (que es el probador en este caso) que presente las solicitudes de servicio adecuadas. Estos deben dirigirse al proveedor o equipo apropiado y la coordinación debe realizarse regularmente con ellos para garantizar que la próxima versión se haya solucionado el problema en particular.
Otro aspecto de la gobernanza sería proporcionar informes ambientales detallados a la gerencia o las partes interesadas de vez en cuando, lo que ayuda a generar transparencia y constituye una buena base para cualquier análisis.
Preparación de datos de prueba
Veamos ahora la última parte de un Creación del banco de pruebas, que implica configurar los datos de prueba. . Con una parte tan grande que se dice sobre el entorno de prueba, la verdadera esencia del entorno de prueba, su robustez y eficiencia se pueden medir con los datos de prueba. Por definición, los datos de prueba son cualquier tipo de entrada dada al código de software que se está probando.
Aunque dedicamos una buena cantidad de tiempo a diseñar casos de prueba, la razón por la que los datos de prueba son importantes es porque aseguran una cobertura de prueba completa para todo tipo de escenarios, mejorando así la calidad. Podría haber algunos datos de prueba que sean necesarios para cualquier prueba de ruta positiva o feliz.
Algunos otros datos podrían diseñarse para errores o pruebas negativas, lo que es muy útil para descubrir cómo funciona la aplicación cuando se coloca en situaciones anormales.
Los datos de prueba generalmente se crean antes de que comience la ejecución del texto porque cada entorno de prueba tiene su propio conjunto de complejidades o la preparación de los datos en sí puede ser un proceso largo. Entonces, generalmente, las fuentes de datos de prueba podrían ser el equipo de desarrollo interno o los usuarios finales que consumen el código o la función.
Por ejemplo,Prueba de funcionamiento
Tomemos un ejemplo en el que necesita realizar pruebas funcionales o pruebas de caja negra. Aquí el objetivo es que el código tenga que cumplir funcionalmente los requisitos que se especifican.
Entonces, en tales casos, la preparación de casos de prueba generalmente debe cubrir los siguientes tipos de datos:
- Datos de ruta positiva: Con el documento de caso de uso de desarrollo como referencia, estos son los datos que generalmente están sincronizados con la realización de los escenarios de ruta positiva.
- Datos de ruta negativa: Estos son datos que generalmente se consideran 'inválidos' con respecto al correcto funcionamiento funcional del código.
- Datos nulos: No proporcionar datos cuando la aplicación o el código los esperan.
- Datos erróneos: Determinación del rendimiento del código cuando los datos se suministran en un formato ilegal.
- Datos de condiciones de contorno: Pruebe los datos que se proporcionan fuera del índice o la matriz para determinar cómo funciona el código.
Los datos de prueba juegan un papel clave en la identificación de dónde un producto o característica puede romperse por completo. Tenga siempre la práctica de sondear y validar el tipo de datos alimentados al entorno de prueba en las diferentes fases de la prueba.
Gestión de datos de prueba
Cuando los datos de prueba juegan un papel tan importante para asegurar la calidad del producto, es razonable decir que su gestión y optimización también juega un papel igualmente importante en la garantía de calidad de cualquier producto que deba entregarse a los clientes.
Necesidad de gestión de datos de prueba y mejores prácticas:
#1) Un gran número de organizaciones están teniendo objetivos comerciales que cambian rápidamente para satisfacer las necesidades del usuario final y, por lo tanto, no es necesario mencionar que los datos de prueba adecuados son fundamentales para determinar la calidad de las pruebas. Esto implicará configurar el tipo exacto de datos para los respectivos entornos de prueba y monitorear los patrones de comportamiento.
Como ya se mencionó, una gran parte del tiempo de un equipo de prueba se dedica a la planificación de los datos de prueba y sus tareas relacionadas. Muchas veces, la prueba de cualquier funcionalidad tiende a verse obstaculizada en gran medida debido a la falta de disponibilidad de datos de prueba adecuados, lo que plantea un desafío crítico con respecto a la cobertura completa de las pruebas.
#2) También a veces para ciertos requisitos de prueba los datos de prueba deben actualizarse constantemente . Esto en sí mismo provoca un gran retraso en el ciclo debido a la repetición constante que también aumenta el costo de la aplicación que llega al mercado.
En otras ocasiones, si el producto que se envía tiene participación con diferentes unidades de grupo de trabajo en una organización grande, la creación y actualización de datos de prueba requiere un nivel intrincado de coordinación entre estos grupos de trabajo.
#3) Aunque los equipos de prueba necesitan crear todo tipo de datos que sean posibles para garantizar las pruebas adecuadas, las organizaciones también deben considerar que hacer esto significaría que todos los diferentes tipos de datos deben almacenarse en algún tipo de repositorio.
Aunque tener un repositorio es una buena práctica, almacenar cantidades excesivas y datos no deseados no solo aumentaría significativamente el espacio de almacenamiento para almacenar estos grandes fragmentos de datos, sino que también haría cada vez más difícil obtener los datos adecuados para las pruebas en cuestión si no hay mantenimiento de la versión y archivo de este repositorio.
La mayoría de las organizaciones generalmente se enfrentan a estos desafíos comunes con respecto a los datos de prueba. Por lo tanto, es necesario implementar algunas estrategias de gestión para minimizar el grado de estos desafíos.
A continuación, se muestran algunas metodologías sugeridas para la gestión de los datos de prueba y mantenerla relevante para las necesidades de prueba. Las siguientes prácticas son muy básicas y genéricas y normalmente funcionan para la mayoría de las organizaciones. Cómo se adopta, es puramente discrecional de las respectivas organizaciones.
Estrategias de gestión de datos de prueba
# 1) Análisis de datos
Generalmente, los datos de prueba se construyen en función de los casos de prueba que se ejecutarán. Por ejemplo, en un equipo de pruebas del sistema, el escenario de prueba de extremo a extremo debe identificarse en función de los datos de prueba diseñados. Esto podría implicar que una o más aplicaciones funcionen.
Digamos que en un producto que gestiona la carga de trabajo: implica que la aplicación del controlador de gestión, las aplicaciones de middleware, las aplicaciones de base de datos funcionen en correlación entre sí. Los datos de prueba requeridos para el mismo podrían estar dispersos. Se debe realizar un análisis exhaustivo de todos los diferentes tipos de datos que puedan ser necesarios para garantizar una gestión eficaz.
# 2) Configuración de datos para reflejar el entorno de producción
Esto es generalmente una extensión del paso anterior y permite comprender cuál será el escenario de producción o de usuario final y qué datos se requieren para el mismo. Utilice esos datos y compárelos con los datos que existen actualmente en el entorno de prueba actual. Basándose en estos nuevos datos, es posible que sea necesario crear o modificar.
#3) Determinación de la limpieza de los datos de prueba
Según el requisito de prueba en el ciclo de lanzamiento actual (donde un ciclo de lanzamiento puede extenderse durante mucho tiempo), los datos de prueba pueden necesitar ser alterados o creados como se indica en el punto anterior. Estos datos de prueba, aunque no son inmediatamente relevantes, pueden ser necesarios en un momento posterior. Por lo tanto, se debe formular un proceso claro para determinar cuándo se pueden limpiar los datos de la prueba.
# 4) Identificar datos sensibles y protegerlos
Muchas veces, para probar correctamente las aplicaciones, es posible que se requiera una gran cantidad de datos muy confidenciales. Por ejemplo, un entorno de prueba basado en la nube es una opción popular porque realiza pruebas bajo demanda de diferentes productos.
Sin embargo, algo tan básico como garantizar la privacidad del usuario en una nube es motivo de preocupación. Por lo tanto, especialmente en los casos en que necesitemos replicar el entorno del usuario, se debe identificar el mecanismo para proteger los datos confidenciales. El mecanismo se rige en gran medida por el volumen de datos de prueba utilizados.
# 5) Automatización
Así como adoptamos la automatización para ejecutar pruebas repetitivas o para ejecutar las mismas pruebas con diferentes tipos de datos, también es posible automatizar la creación de datos de prueba. Esto ayudaría a exponer cualquier error que pueda ocurrir con respecto a los datos durante la prueba. Una forma posible de hacer esto es comparando los resultados producidos por un conjunto de datos de ejecuciones de prueba consecutivas. A continuación, automatice este proceso de comparación.
#6) Actualización de datos efectiva usando un repositorio central
Esta es, con mucho, la metodología más importante y constituye el corazón de la implementación de la gestión de datos. Todos los puntos mencionados anteriormente, especialmente aquellos con respecto a la configuración de datos, la limpieza de datos están relacionados directa o indirectamente con esto.
Se puede ahorrar mucho esfuerzo en la creación de datos de prueba si se mantiene un repositorio central que contiene todo tipo de datos que pueden ser necesarios para varios tipos de pruebas. ¿Cómo se hace esto? En ciclos de prueba consecutivos, ya sea para un caso de prueba nuevo o un caso de prueba modificado, verifique si los datos existen en el repositorio. Si no existe, primero ingrese esos datos en el entorno de prueba.
A continuación, esto se puede dirigir a este repositorio para referencia futura. Ahora, para ciclos de lanzamiento consecutivos, el equipo de prueba puede usar todos o un subconjunto de estos datos. ¿No es muy evidente la ventaja? Dependiendo de los conjuntos de datos que se utilizan con frecuencia, los datos obsoletos se pueden eliminar fácilmente y, por lo tanto, garantizar que los datos correctos estén siempre presentes, reduciendo así el costo de almacenar esos datos innecesarios.
En segundo lugar, también puede tener un par de versiones de este repositorio guardadas o puede revisarlo según sea necesario. Tener diferentes versiones del repositorio puede ser de gran ayuda en las pruebas de regresión para identificar qué cambio en los datos puede hacer que el código se rompa.
Conclusión
El entorno de prueba debe ser de suma importancia en cada equipo de prueba. Cada ciclo de lanzamiento traerá una gran cantidad de nuevos desafíos para combatir con un entorno de prueba poco confiable y no planificado.
Como medida revolucionaria, muchas organizaciones ahora están implementando estrategias como formar equipos dedicados de mantenimiento del entorno de prueba que establecen ciertos marcos para el mantenimiento efectivo de los entornos de prueba, para garantizar ciclos de lanzamiento más suaves.
Las pruebas mejoradas son solo un efecto obvio de la optimización de la gestión de datos de prueba. Una esencia clave es que garantiza una solución rentable para las organizaciones sin comprometer la confiabilidad del producto.
Háganos saber cómo administra su entorno de prueba y cómo prepara los datos de prueba. ¿Quieres agregar algún consejo?
Lectura recomendada
- Las 14 MEJORES herramientas de gestión de datos de prueba en 2021
- Las 10 mejores herramientas de análisis de datos para una gestión de datos perfecta (LISTA 2021)
- Tutorial de gestión de pruebas: una guía definitiva para la gestión de pruebas
- ¿Qué son los datos de prueba? Técnicas de preparación de datos de prueba con ejemplo
- Función de agrupación de datos en IBM Rational Quality Manager para la gestión de datos de prueba
- Creación de marco de Selenium y acceso a datos de prueba desde Excel - Tutorial de Selenium n. ° 21
- Generación de datos de prueba con la herramienta en línea GEDIS Studio (Parte 2)