Tutorial de pruebas ETL

ยฟQuรฉ son las pruebas ETL?

Las pruebas ETL se realizan para garantizar que los datos que se cargaron desde un origen hasta el destino despuรฉs de la transformaciรณn empresarial sean precisos. Tambiรฉn implica la verificaciรณn de datos en varias etapas intermedias que se utilizan entre el origen y el destino. ETL significa Extraer-Transformar-Cargar.

Prueba ETL

Pruebas de almacenamiento de datos

Pruebas de almacenamiento de datos es un mรฉtodo de prueba en el que se prueba la integridad, confiabilidad, precisiรณn y coherencia de los datos dentro de un almacรฉn de datos para cumplir con el marco de datos de la empresa. El objetivo principal de las pruebas del almacรฉn de datos es garantizar que los datos integrados dentro del almacรฉn de datos sean lo suficientemente confiables para que una empresa pueda tomar decisiones.

ยฟQuรฉ es ETL?

ETL significa Extraer-Transformar-Cargar y es un proceso de cรณmo se cargan los datos desde el sistema de origen al almacรฉn de datos. Los datos se extraen de una base de datos OLTP, se transforman para que coincidan con el esquema del almacรฉn de datos y se cargan en la base de datos del almacรฉn de datos. Muchos almacenes de datos tambiรฉn incorporan datos de sistemas que no son OLTP, como archivos de texto, sistemas heredados y hojas de cรกlculo.

Veamos como funciona

Por ejemplo, hay una tienda minorista que tiene diferentes departamentos, como ventas, marketing, logรญstica, etc. Cada uno de ellos maneja la informaciรณn del cliente de forma independiente y la forma en que almacenan esos datos es bastante diferente. El departamento de ventas lo almacenรณ por nombre del cliente, mientras que el departamento de marketing lo almacenรณ por identificaciรณn del cliente.

Ahora bien, si quieren verificar el historial del cliente y quieren saber cuรกles son los diferentes productos que comprรณ debido a diferentes campaรฑas de marketing, serรญa muy tedioso.

La soluciรณn es utilizar un datawarehouse almacenar informaciรณn de diferentes fuentes en una estructura uniforme utilizando ETL. ETL puede transformar conjuntos de datos diferentes en una estructura unificada.Later Utilice herramientas de BI para obtener informaciรณn valiosa e informes a partir de estos datos.

El siguiente diagrama en este tutorial de pruebas ETL le brinda la HOJA DE RUTA del flujo del proceso de pruebas ETL y varios conceptos de pruebas ETL:

Extraer-Transformar-Cargar

1) Extracto

  • Extraer datos relevantes

2) Transformar

  • Transformar datos al formato DW (Data Warehouse)
  • Claves de compilaciรณn: una clave es uno o mรกs atributos de datos que identifican de forma รบnica una entidad. Varios tipos de llaves son clave primaria, clave alternativa, clave externa, clave compuesta, clave sustituta. El almacรฉn de datos es propietario de estas claves y nunca permite que ninguna otra entidad las asigne.
  • Limpieza de datos: Una vez extraรญdos los datos, pasarรกn a la siguiente fase, de limpieza y conformidad de datos. La limpieza hace la omisiรณn en los datos ademรกs de identificar y corregir los errores. Conforme significa resolver los conflictos entre aquellos datos que son incompatibles, para que puedan usarse en un almacรฉn de datos empresarial. Ademรกs de estos, este sistema crea metadatos que se utilizan para diagnosticar problemas del sistema fuente y mejorar la calidad de los datos.

3) Carga

  • Cargar datos en DW (Data Warehouse)
  • Crear agregados: crear un agregado consiste en resumir y almacenar datos que estรกn disponibles en tabla de hechos para mejorar el rendimiento de las consultas de los usuarios finales.

Proceso de prueba ETL

Al igual que otros procesos de prueba, ETL tambiรฉn pasa por diferentes fases. Las diferentes fases del proceso de prueba ETL son las siguientes

Proceso de prueba ETL

Las pruebas ETL se realizan en cinco etapas.

  1. Identificaciรณn de fuentes y requisitos de datos
  2. De adquisiciรณn de datos
  3. Implementar lรณgicas de negocio y Modelado dimensional.
  4. Crear y completar datos
  5. Crear informes

Proceso de prueba ETL

Tipos de pruebas ETL

  1. Pruebas de validaciรณn de producciรณn
    Proceso de prueba: "Equilibrio de tablas" o "conciliaciรณn de producciรณn", este tipo de prueba ETL se realiza en los datos a medida que se trasladan a los sistemas de producciรณn. Para respaldar su decisiรณn comercial, los datos de sus sistemas de producciรณn deben estar en el orden correcto. informรกtica La opciรณn de validaciรณn de datos proporciona capacidades de gestiรณn y automatizaciรณn de pruebas ETL para garantizar que los sistemas de producciรณn no se vean comprometidos por los datos.
  2. Fuente a Target Pruebas (pruebas de validaciรณn)
    Proceso de prueba: Este tipo de prueba se lleva a cabo para validar si los valores de datos transformados son los valores de datos esperados.
  3. Aplicaciรณn Upgrades
    Proceso de prueba: Este tipo de pruebas ETL se pueden generar automรกticamente, lo que ahorra un tiempo sustancial de desarrollo de pruebas. Este tipo de prueba comprueba si los datos extraรญdos de una aplicaciรณn o repositorio anterior son exactamente los mismos que los datos de un repositorio o aplicaciรณn nueva.
  4. Pruebas de metadatos
    Proceso de prueba: Las pruebas de metadatos incluyen pruebas de verificaciรณn del tipo de datos, verificaciรณn de la longitud de los datos y verificaciรณn de รญndice/restricciรณn.
  5. Pruebas de integridad de datos
    Proceso de prueba: Para verificar que todos los datos esperados estรฉn cargados en el destino desde la fuente, se realizan pruebas de integridad de los datos. Algunas de las pruebas que se pueden ejecutar son comparar y validar recuentos, agregados y datos reales entre el origen y el destino para columnas con transformaciรณn simple o sin transformaciรณn.
  6. Pruebas de precisiรณn de datos
    Proceso de prueba: Esta prueba se realiza para garantizar que los datos se carguen y transformen con precisiรณn como se esperaba.
  7. Pruebas de transformaciรณn de datos
    Proceso de prueba: Se realizan pruebas de transformaciรณn de datos, ya que en muchos casos no se puede lograr escribiendo una fuente. SQL consultar y comparar la salida con el objetivo. Es posible que sea necesario ejecutar varias consultas SQL para cada fila para verificar las reglas de transformaciรณn.
  8. Pruebas de calidad de datos
    Proceso de prueba:

    Las pruebas de calidad de datos incluyen pruebas de sintaxis y referencia. Para evitar cualquier error debido a la fecha o el nรบmero de pedido durante el proceso comercial, se realizan pruebas de calidad de datos.

    Pruebas de sintaxis: informarรก datos sucios, basados โ€‹โ€‹en caracteres no vรกlidos, patrones de caracteres, orden incorrecto de mayรบsculas o minรบsculas, etc.

    Pruebas de referencia: Verificarรก los datos segรบn el modelo de datos. Por ejemplo: ID de cliente

    Las pruebas de calidad de los datos incluyen verificaciรณn de nรบmeros, verificaciรณn de fechas, verificaciรณn de precisiรณn, verificaciรณn de datos, verificaciรณn de nulos, etc.

  9. Pruebas ETL incrementales
    Proceso de prueba: Esta prueba se realiza para verificar la integridad de los datos antiguos y nuevos con la adiciรณn de datos nuevos. Las pruebas incrementales verifican que las inserciones y actualizaciones se procesen segรบn lo esperado durante el proceso ETL incremental.
  10. Pruebas de GUI/Navegaciรณn
    Proceso de prueba: Esta prueba se realiza para comprobar los aspectos de navegaciรณn o GUI de los informes de front-end.

Cรณmo crear un caso de prueba ETL

Las pruebas ETL son un concepto que se puede aplicar a diferentes herramientas y bases de datos en la industria de gestiรณn de la informaciรณn. El objetivo de las pruebas ETL es garantizar que los datos que se han cargado desde el origen hasta el destino despuรฉs de la transformaciรณn empresarial sean precisos. Tambiรฉn implica la verificaciรณn de datos en varias etapas intermedias que se utilizan entre el origen y el destino.

Al realizar pruebas ETL, dos documentos que siempre utilizarรก un evaluador de ETL son

  1. Hojas de mapeo ETL:Las hojas de mapeo ETL contienen toda la informaciรณn de las tablas de origen y destino, incluidas todas y cada una de las columnas y su bรบsqueda en tablas de referencia. Los evaluadores de ETL deben sentirse cรณmodos con las consultas SQL, ya que las pruebas de ETL pueden implicar escribir consultas grandes con mรบltiples uniones para validar datos en cualquier etapa de ETL. Las hojas de mapeo ETL brindan una gran ayuda al escribir consultas para la verificaciรณn de datos.
  2. Esquema DB de origen, Target: Debe tenerse a mano para verificar cualquier detalle en las hojas de mapeo.

Escenarios de prueba y casos de prueba de ETL

  1. Validaciรณn de documentos de mapeo
    Casos de prueba: Verifique el documento de mapeo si se proporciona o no la informaciรณn ETL correspondiente. El registro de cambios debe mantenerse en cada documento de mapeo.
  2. de calidad
    Casos de prueba:

    1) Valide la estructura de la tabla de origen y de destino contra el documento de mapeo correspondiente.
    2) El tipo de datos de origen y el tipo de datos de destino deben ser los mismos
    3) La longitud de los tipos de datos tanto en el origen como en el destino debe ser igual
    4) Verifique que se especifiquen los tipos y formatos de los campos de datos
    5) La longitud del tipo de datos de origen no debe ser menor que la longitud del tipo de datos de destino
    6) Valide el nombre de las columnas en la tabla contra el documento de mapeo.

  3. Validaciรณn de restricciones
    Casos de prueba: Asegรบrese de que las restricciones estรฉn definidas para una tabla especรญfica como se esperaba
  4. Problemas de coherencia de datos
    Casos de prueba:

    1) El tipo de datos y la longitud de un atributo particular pueden variar en archivos o tablas, aunque la definiciรณn semรกntica sea la misma.
    2) Mal uso de las restricciones de integridad

  5. Problemas de integridad
    Casos de prueba:

    1) Asegรบrese de que todos los datos esperados estรฉn cargados en la tabla de destino.
    2) Comparar los recuentos de registros entre el origen y el destino.
    3) Verifique si hay registros rechazados
    4) Compruebe que los datos no se trunquen en la columna de las tablas de destino
    5) Verificar el anรกlisis del valor lรญmite
    6) Compara valores รบnicos de campos clave entre los datos cargados en WH y los datos de origen

  6. Problemas de correcciรณn
    Casos de prueba:

    1) Datos mal escritos o registrados de forma incorrecta
    2) Datos nulos, no รบnicos o fuera de rango


  7. Casos de prueba:
  8. Calidad de los Datos
    Casos de prueba:

    1) Verificaciรณn de nรบmero: Es necesario verificar el nรบmero y validarlo.
    2) Verificaciรณn de fecha: Deben seguir el formato de fecha y debe ser el mismo en todos los registros.
    3) Comprobaciรณn de precisiรณn
    4) Verificaciรณn de datos
    5) Comprobaciรณn de nulos

  9. Validar nulo
    Casos de prueba: Verifique los valores nulos, donde se especifica "No nulo" para una columna especรญfica.
  10. Cheque duplicado
    Casos de prueba:

    1) Es necesario validar la clave รบnica, la clave principal y cualquier otra columna debe ser รบnica segรบn los requisitos comerciales si no hay filas duplicadas.
    2) Verifique si existen valores duplicados en alguna columna que se extrae de varias columnas en la fuente y se combina en una sola columna
    3) Segรบn los requisitos del cliente, es necesario garantizar que no haya duplicados en la combinaciรณn de varias columnas solo dentro del objetivo.

  11. Validaciรณn de fecha
    Casos de prueba: Los valores de fecha se utilizan en muchas รกreas del desarrollo de ETL para

    1) Para conocer la fecha de creaciรณn de la fila
    2) Identificar registros activos segรบn la perspectiva de desarrollo ETL
    3) Identificar los registros activos segรบn la perspectiva de los requisitos del negocio
    4) A veces, en funciรณn de los valores de fecha se generan las actualizaciones e inserciones.

  12. Validaciรณn completa de datos
    Casos de prueba:

    1) Validar el conjunto de datos completo en la tabla de origen y destino menos una consulta en una mejor soluciรณn
    2) Necesitamos fuente menos objetivo y objetivo menos fuente
    3) Si la consulta negativa devuelve algรบn valor, estas filas deben considerarse no coincidentes.
    4) Es necesario hacer coincidir las filas entre el origen y el destino mediante la declaraciรณn de intersecciรณn
    5) El recuento devuelto por intersect debe coincidir con los recuentos individuales de las tablas de origen y destino
    6) Si la consulta negativa devuelve filas y el recuento de intersecciรณn es menor que el recuento de origen o la tabla de destino, entonces podemos considerar que existen filas duplicadas.

  13. Limpieza de datos
    Casos de prueba: Las columnas innecesarias deben eliminarse antes de cargarlas en el รกrea de preparaciรณn.

Tipos de errores ETL

Tipos de errores ETL

Tipo de errores Descripciรณn
Errores de interfaz de usuario/errores cosmรฉticos โ€ข Relacionado con la GUI de la aplicaciรณn
โ€ข Estilo de fuente, tamaรฑo de fuente, colores, alineaciรณn, errores ortogrรกficos, navegaciรณn, etc.
Error relacionado con el anรกlisis de valor lรญmite (BVA) โ€ข Valores mรญnimos y mรกximos
Error relacionado con la particiรณn de clases de equivalencia (ECP) โ€ข Tipo vรกlido y no vรกlido
Errores de entrada/salida โ€ข No se aceptan valores vรกlidos
โ€ข Se aceptan valores no vรกlidos
Errores de cรกlculo โ€ข Errores matemรกticos
โ€ข El resultado final es incorrecto
Errores de condiciรณn de carga โ€ข No permite mรบltiples usuarios
โ€ข No permite la carga esperada por el cliente
Errores de condiciรณn de carrera โ€ข El sistema se bloquea y se bloquea
โ€ข El sistema no puede ejecutar plataformas cliente
Errores de control de versiones โ€ข No hay coincidencia de logotipo
โ€ข No hay informaciรณn de versiรณn disponible
โ€ข Esto ocurre generalmente en Pruebas de regresiรณn
Errores de hardware โ€ข El dispositivo no responde a la aplicaciรณn
Errores de fuente de ayuda โ€ข Errores en los documentos de ayuda

Diferencia entre pruebas de bases de datos y pruebas ETL

Prueba ETL Pruebas de bases de datos
Verifica si los datos se mueven como se esperaba El objetivo principal es verificar si los datos siguen las reglas/estรกndares definidos en el modelo de datos.
Verifica si los recuentos en el origen y el destino coinciden

Verifica si los datos transformados son segรบn las expectativas.

Verifique que no haya registros huรฉrfanos y que se mantengan las relaciones de clave primaria externa
Verifica que las relaciones de clave primaria externa se conserven durante la ETL Verifica que no haya tablas redundantes y que la base de datos estรฉ normalizada de manera รณptima.
Verifica la duplicaciรณn en los datos cargados Verifique si faltan datos en las columnas donde sea necesario

Responsabilidades de un probador ETL

Las responsabilidades clave de un probador ETL se dividen en tres categorรญas

  • Mesa de escenario/ SFS o MFS
  • Lรณgica de transformaciรณn empresarial aplicada
  • Target carga de tabla desde un archivo de etapa o tabla despuรฉs de aplicar una transformaciรณn.

Algunas de las responsabilidades de un probador ETL son

  • Pruebe el software ETL
  • Componentes de prueba del almacรฉn de datos ETL
  • Ejecutar prueba basada en datos de backend
  • Crear, diseรฑar y ejecutar Casos de prueba, planes de prueba y arnรฉs de prueba.
  • Identificar el problema y proporcionar soluciones para problemas potenciales.
  • Aprobar requisitos y especificaciones de diseรฑo.
  • Transferencias de datos y archivo plano de prueba.
  • Escribir consultas SQL3 para varios escenarios como prueba de recuento

Pruebas de rendimiento en ETL

Pruebas de rendimiento en ETL es una tรฉcnica de prueba para garantizar que un sistema ETL pueda manejar la carga de mรบltiples usuarios y transacciones. El objetivo principal de ETL Test de rendimiento es optimizar y mejorar el rendimiento de la sesiรณn mediante la identificaciรณn y eliminaciรณn de cuellos de botella en el rendimiento. Las bases de datos de origen y de destino, las asignaciones, las sesiones y el sistema posiblemente tengan cuellos de botella en el rendimiento.

Una de las mejores herramientas utilizadas para las pruebas/ajustes de rendimiento es Informatica.

Automatizaciรณn de pruebas ETL

La metodologรญa general de las pruebas ETL es utilizar secuencias de comandos SQL o "observar" los datos. Estos enfoques para las pruebas ETL consumen mucho tiempo, son propensos a errores y rara vez proporcionan informaciรณn completa. prueba de cobertura. Acelerar, mejorar cobertura, reducir costos, mejorar Defecto raciรณn de detecciรณn de pruebas ETL en entornos de producciรณn y desarrollo, la automatizaciรณn es la necesidad del momento. Una de esas herramientas es Informatica.

Mejores prรกcticas para pruebas ETL

  1. Asegรบrese de que los datos se transformen correctamente
  2. Sin pรฉrdida ni truncamiento de datos, los datos proyectados deben cargarse en el almacรฉn de datos.
  3. Asegรบrese de que la aplicaciรณn ETL rechace y reemplace adecuadamente con valores predeterminados e informe datos no vรกlidos.
  4. Necesidad de garantizar que los datos se carguen en el almacรฉn de datos dentro de los plazos prescritos y esperados para confirmar la escalabilidad y el rendimiento.
  5. Todos los mรฉtodos deben tener pruebas unitarias apropiadas independientemente de la visibilidad.
  6. Para medir su efectividad, todas las pruebas unitarias deben utilizar tรฉcnicas de cobertura adecuadas.
  7. Esfuรฉrcese por lograr una afirmaciรณn por caso de prueba
  8. Crear pruebas unitarias que apuntan a excepciones

Revisa - Preguntas y respuestas de la entrevista de prueba ETL

Resumir este post con: