simple approach xml database testing
Este artículo ayudará a comprender el XML para Concepto de prueba de base de datos , que es un desafío tipo de prueba .
La comparación de datos es una tarea crítica a realizar con calidad. Cualquier defecto resultará en uno o varios fallos en una aplicación.
XML es un formato de mensaje de comunicación electrónica que contiene datos y la base de datos es un almacenamiento físico con tablas / columnas que contienen datos.
La mayoría de las aplicaciones intercambian datos entre sí. Estas comunicaciones pueden tener la forma de mensajes XML que contienen datos. Además, estos datos se almacenan en un sistema de base de datos y, cuando es necesario, las aplicaciones los obtienen.
También leer => Una excelente manera de probar datos utilizando tecnologías XML
La mayoría de dominios como finanzas, marketing, ventas, comercio electrónico, automóvil, logística y fabricación utilizan esta técnica para la comunicación de datos con aplicaciones.
Para que la prueba de XML a base de datos sea exitosa, la entrada más crucial es la documento de mapeo que define cada elemento del XML frente a las columnas de la base de datos.
El documento de mapeo proporcionará una representación completa de los elementos (XML) a la asociación de columnas (DB). Los valores de los elementos XML pueden ser una entrada a las tablas de la base de datos o viceversa.
convertidor online gratis de youtube a mp4
Con este artículo, comprenderá bien cómo probar los datos de mensajes XML en los datos de la base de datos para verificar la precisión de los datos.
Lo que vas a aprender:
- Hablemos de XML y base de datos:
- Arquitectura de la aplicación:
- Ejemplo:
- Cómo probar:
- Ejemplo de la vida real:
- Escenarios de falla:
- Conclusión:
- Lectura recomendada
Hablemos de XML y base de datos:
Las aplicaciones utilizan diferentes técnicas para comunicarse entre sí. La comunicación de mensajes mediante XML es uno de ellos. XML es una técnica confiable para comunicar mensajes (datos) entre dos aplicaciones. XML contiene un conjunto de elementos que tienen valores específicos. A veces, los valores pueden ser NULL o estar en blanco.
La base de datos almacena datos en forma de tablas. Una base de datos contiene varias tablas. Una aplicación puede alimentar datos a la tabla en una base de datos y también los datos de la tabla pueden ser recuperados por aplicaciones cuando sea necesario.
Ahora las aplicaciones pueden almacenar / recuperar datos de tablas de bases de datos en forma de XML, y es una técnica bastante confiable / flexible para hacerlo.
Arquitectura de la aplicación:
Como evaluador, es importante:
- Revise la Arquitectura del producto para comprender cómo las aplicaciones comunican mensajes entre módulos / bases de datos / Una vez que revise esta información y descubra que hay inconsistencias / preguntas, puede comunicarse con BA / SA para obtener aclaraciones.
- Comprender los flujos de datos de aplicaciones ascendentes y descendentes.
- El flujo de datos entrantes y salientes a una aplicación.
En algunos casos, las aplicaciones ascendentes y descendentes pueden ser bases de datos de diferentes aplicaciones y se comunican / transmiten datos en formato XML mediante procedimientos almacenados, servicios web, API, etc. En otros, puede haber una combinación de bases de datos y aplicaciones que comunican datos juntos.
Ejemplo:
Para este artículo de prueba de XML a base de datos, consideremos una aplicación que se comunica con una base de datos para almacenar datos.
Tenemos una aplicación posterior IBAPX , que transmite mensajes en formato XML a una aplicación de base de datos MYDBX . Tenemos una aplicación upstream OBAPX , que obtiene datos de MYDBX para una aplicación de informes RPTX y es una aplicación ascendente para OBAPX .
Nota: Antes de comenzar, conozca la tecnología utilizada para la comunicación de middleware (procedimiento almacenado, servicio web, API, etc.) y conozca la arquitectura con claridad. Esta información suele estar en el documento de diseño o con los equipos de SA / BA / Dev.
Ahora la aplicación IBAPX está almacenando datos en la aplicación de base de datos MYDBX. Para saber qué elemento de xml está asignado a la columna de la tabla, debemos consultar documento de mapeo . A veces, los elementos XML y los nombres de las columnas pueden ser iguales o no. La diferencia se debe a una necesidad empresarial.
P.ej . digamos que IBAPX está enviando un elemento con el nombre como número de orden de ventas , pero cuando MYDBX almacena el mismo valor de elemento en una tabla, se refiere a él como p_orderid nombre de la columna. Esto puede deberse al hecho de que el elemento XML se conoce como entidad relacionada con las ventas, cuando se almacena el mismo valor en la tabla, el nombre de la columna podría haberse cambiado para referirse al uso de producción. Esto puede cambiar en otras aplicaciones según las necesidades comerciales.
Cómo probar:
Ahora bien, ¿cómo puede un evaluador probar todos los escenarios de manera efectiva y eficiente? Vamos a discutir.
En primer lugar, toma el archivo XML de entrada y validar la estructura XML es decir, elementos. Esto se puede hacer con la ayuda de XSD, que define la estructura del XML respectivo.
El archivo XSD se parece a XML y define la estructura de XML, como el nombre del elemento, el tipo de elemento, minOccurs, maxOccurs, etc. Una vez realizada la validación XML, expórtelo a Excel. Simplemente arrastre el archivo xml a una nueva hoja de Excel. Aparecerá una ventana emergente que le preguntará cómo desea abrir el archivo, simplemente seleccione 'Como una tabla XML'. Los datos se guardarán en el archivo de Excel como tabla.
Puede ver los datos llenados en la tabla, consultar la tabla con los datos particulares y buscar el registro. Copie los datos en el mismo archivo de Excel en otra hoja. Ahora, utilizando la función EXACTA en Excel, puede comparar fácilmente los datos XML con los datos de la base de datos. Asegúrese de comparar solo los datos, no los nombres de las columnas.
De esta forma puede comparar varios datos de registros y puede ahorrar mucho esfuerzo manual para comparar valores de datos de elementos XML con valores de datos de columnas de base de datos.
Encuentre el siguiente complemento como referencia:
Nota: En la imagen de arriba puede ver que los nombres de las columnas no coinciden como discutimos antes.
Consejo: A veces, puede tener un problema al comparar XML de gran tamaño con DB. En ese caso, lo único que debe administrar es organizar los valores de las columnas en la hoja de Excel. Recuerda una cosa: La comparación de archivos de Excel debe estar limitado a un tamaño de archivo de 100 MB . Encontrará problemas de rendimiento si va más allá.
Como comentamos antes, los valores de los elementos XML pueden ser una entrada a las tablas de la base de datos o viceversa. Entonces, una vez que obtenga el mensaje XML como archivo de entrada a una aplicación desde una aplicación de base de datos, debe realizar la técnica de prueba anterior para comparar los valores de datos de XML con base de datos. En algún momento, necesitamos realizar pruebas E2E donde múltiples aplicaciones procesan los datos.
Ejemplo de la vida real:
Un usuario ha pedido un libro a Flipkart, un sitio de comercio electrónico. El punto de partida es que el usuario ordena un artículo y el punto final es recibir una copia de la factura en el centro de comercio electrónico. A partir de entonces, podrían ocurrir algunos escenarios, como devolución de pedido o cambio de pedido, devolución de pago, etc.
Aquí, múltiples módulos como ventas, inventario, procesamiento de artículos, logística, pago, devoluciones, ofertas, etc. están involucrados para procesar un pedido hasta que el artículo llega al cliente. El flujo E2E está comunicando mensajes para cumplir con el pedido.
Como evaluador, cuando participará en las pruebas E2E, es posible que deba encontrarse con los escenarios en los que validará los datos de Aplicación vs DB o DB a DB o Aplicación a Aplicación. Aquí debe tener una claridad total sobre el flujo de datos E2E, es decir, cuáles deberían ser los datos recibidos por una aplicación o enviados por la aplicación y cuáles son los datos que se almacenan en DB o se obtienen de DB.
Escenarios de falla:
Analicemos algunos posibles escenarios de falla.
- Un escenario de falla simple es mapeo incorrecto . El mapeo entre los elementos XML y las columnas de la base de datos debe ser analizado durante la fase de análisis o planificación por un evaluador. Discuta todas las inquietudes sobre el mapeo con BA / SA para aclarar dudas. Una vez que la asignación está congelada, puede asegurarse de que los valores de los elementos XML y las columnas de la base de datos coincidan.
- Compare los valores y, si no coinciden, registre un defecto para solucionar el problema. Hay varias posibilidades para el defecto planteado, como defecto de datos: puede ser el problema de datos de prueba ; Defecto de código: puede ser el error en el código que analiza los valores de los datos para no asignarlos; Defecto de artefacto: puede ser un mapeo incorrecto proporcionado por BA / SA.
- Problema de formato XML - Encabezado XML o metadatos o algunas etiquetas XML incorrectas. En este caso, el propio XML no pudo almacenar los valores de los datos en la tabla de la base de datos.
- Discrepancia de tipo de datos - El valor del elemento en el XML tiene más caracteres de longitud, que es más de lo que la columna DB puede aceptar. Este será un problema de código y el equipo de desarrollo debe realizar los cambios necesarios en la longitud del tipo de datos para esa columna.
- Fallo ambiental - Entorno inactivo o aplicación DB inactiva, el flujo de datos permanece incompleto.
- Problema de rendimiento - Puede ser que la cantidad de registros que contienen el mensaje sea enorme o que la carga en la base de datos sea alta para comenzar con la composición del registro es demasiado grande.
- Fallo de middleware provocará la disminución del flujo de datos de la aplicación a la base de datos.
- Problema de acceso a la base de datos debido a que la aplicación entrante no puede enviar los datos a la tabla respectiva.
Conclusión:
Las pruebas de XML a base de datos serán más complejas cuando un solo mensaje XML almacenará datos en varios sistemas. Además, el rendimiento de la base de datos para almacenar / recuperar un gran volumen de datos será un desafío para que un evaluador pruebe tales escenarios.
El ejemplo anterior es un pequeño segmento de actividades de prueba que se llevan a cabo en una aplicación. Es posible que un evaluador deba realizar una gran cantidad de pruebas de datos con un enfoque similar.
Háganos saber sus comentarios, preguntas y experiencia a continuación.
Lectura recomendada
- Prueba de base de datos con JMeter
- Mejores herramientas de prueba de software 2021 (Herramientas de automatización de pruebas de control de calidad)
- Una forma excelente de realizar pruebas de datos con tecnologías XML (informe técnico)
- Más de 40 mejores herramientas de prueba de bases de datos: soluciones de prueba de datos populares
- ¿Qué es la prueba de mutación? Tutorial con ejemplos
- Descarga del libro electrónico Testing Primer
- Las 10 mejores herramientas de prueba de ETL en 2021
- Guía completa de pruebas de bases de datos (por qué, qué y cómo probar datos)