sql >> Base de Datos >  >> RDS >> Database

¿Qué es la prueba de base de datos y cómo realizarla?

Los datos son el corazón de cada aplicación de software y también lo es la Base de datos que alberga esos datos. Pero con el aumento en el tamaño de los datos o la complejidad de la base de datos también aumenta, lo que dificulta el manejo de los datos. Por lo tanto, la validación de datos se vuelve muy necesaria. Aquí, las pruebas de la base de datos son útiles y ayudan a verificar la calidad, la seguridad y la corrección de los datos que una aplicación está recuperando o almacenando en la base de datos. A través de este artículo, le daré información completa sobre el mismo.

A continuación se muestran los temas tratados en este tutorial:

  • ¿Qué es la prueba de base de datos?
  • ¿Por qué se requiere la prueba de la base de datos?
  • Tipos de pruebas de bases de datos
    • Pruebas estructurales
    • Pruebas funcionales
    • Pruebas no funcionales
  • Etapas de prueba de la base de datos
  • Herramientas de prueba de bases de datos

Así que comencemos.

¿Qué es la prueba de base de datos?

Antes de hablar sobre las pruebas de bases de datos, permítame primero informarle sobre las bases de datos. Una base de datos no es más que una recopilación sistemática de datos que proporciona almacenamiento de datos y ayuda en la manipulación de datos. La administración de datos se vuelve muy fácil al usar estas bases de datos, ya que las bases de datos usan objetos para administrar los datos, como tablas para almacenar datos, vistas para representaciones de datos, funciones y activadores para la manipulación de datos.

Ahora, la prueba de la base de datos se refiere al proceso de validación de los datos que se almacenan en una base de datos mediante la verificación de los objetos que controlan los datos y las diversas funcionalidades que los rodean. En general, las actividades como verificar la validez de los datos, probar la integridad de los datos, relacionar la verificación del rendimiento, probar varios procedimientos, disparadores y funciones en la base de datos se cubren durante la prueba de la base de datos.

Pero para realizar pruebas de bases de datos, es muy importante tener un buen conocimiento de SQL. No se preocupe si no tiene la experiencia requerida, puede consultar este artículo sobre Conceptos básicos de SQL para empezar con él.

¿Por qué probar la base de datos?

Como sabemos, la base de datos es un volcado de datos en el que se recopila una enorme cantidad de datos y se almacenan en un formato estructurado. Aunque DBMS (DataBase Management System) proporciona una forma organizada de administrar, recuperar y almacenar estos datos, hay casos en los que los datos pueden volverse redundantes, duplicados, etc. En tales casos, las pruebas de la base de datos entran en escena, lo que nos ayuda a validar los datos. A continuación, he enumerado varios aspectos en función de los cuales se debe validar una base de datos:

  1. Asignación de datos
    El mapeo de datos es un aspecto integral de las pruebas de bases de datos que se enfoca en validar los datos que van y vienen entre la aplicación y la base de datos back-end.
  2. Validación de propiedades ACID
    ÁCIDO significa A tomicidad, C onsistencia, yo consuelo, y D durabilidad. Este es otro aspecto importante que debe confirmarse con cada transacción de la base de datos.

    • Atomicidad :Esto significa que todas las transacciones de la base de datos son atómicas, es decir, las transacciones pueden dar como resultado un éxito o un fracaso. También conocido como Todo o nada .
    • Coherencia :Esto significa que el estado de la base de datos seguirá siendo válido después de que se complete la transacción.
    • Aislamiento :Esto significa que se pueden ejecutar varias transacciones a la vez sin afectarse entre sí y sin alterar el estado de la base de datos.
    • Durabilidad :Esto significa que una vez que se confirma una transacción, conservará los cambios sin fallar, independientemente del efecto de factores externos.
  3. Integridad de datos
    Probar la integridad de los datos de una base de datos se refiere al proceso de evaluar todo tipo de procesos, operaciones y métodos que se utilizan para acceder, administrar y actualizar la base de datos, también conocida como CRUD operaciones. Esto se enfoca únicamente en probar la precisión y consistencia de los datos almacenados en la base de datos para que obtengamos los resultados esperados o deseados.
  4. Conformidad con las reglas comerciales
    Con el aumento de la complejidad de las bases de datos, varios componentes como restricciones relacionales, disparadores, procedimientos almacenados, etc. también comienzan a complicarse. Para evitar esto, los evaluadores brindan algunas consultas SQL que son lo suficientemente apropiadas para validar los objetos complejos.

Tipos de pruebas de bases de datos

Hay 3 tipos de pruebas de bases de datos que he enumerado a continuación:

  1. Pruebas estructurales
  2. Pruebas funcionales
  3. Pruebas no funcionales

Veamos ahora cada uno de estos tipos y sus subtipos uno por uno.

Pruebas estructurales

La prueba estructural de la base de datos es el proceso de validación de todos los elementos que están presentes dentro del repositorio de datos y se utilizan principalmente para el almacenamiento de datos. Estos elementos no pueden ser manipulados directamente por los usuarios finales. La validación de los servidores de la base de datos es una de las consideraciones más importantes y los evaluadores que logran completar esta fase adquieren con éxito el dominio de las consultas SQL.

Varios tipos de pruebas estructurales son:

  • Pruebas de esquema

Este tipo de prueba también se conoce como prueba de mapeo y se realiza para garantizar que el mapeo del esquema del front-end y el back-end estén sincronizados. Algunos de los puntos de control importantes de esta prueba son:

    • Valida varios tipos de formatos de esquema que están asociados con las bases de datos.
    • Se requiere verificación para tablas/vistas/columnas no asignadas.
    • También se requiere verificación para garantizar la consistencia de las bases de datos heterogéneas en un entorno con el mapeo general de la aplicación.
    • Proporciona varias herramientas para la validación de esquemas de bases de datos.
  • Pruebas de columnas y tablas de bases de datos

Algunos de los puntos de control importantes de esta prueba son:

    • La compatibilidad de los campos de la base de datos y el mapeo de columnas en el back-end y el front-end.
    • Validar la longitud y la convención de nomenclatura de los campos y columnas de la base de datos según los requisitos.
    • Detectar y validar cualquier tabla/columna de base de datos no utilizada o no asignada.
    • Validación de la compatibilidad del tipo de datos y la longitud de los campos en las columnas de la base de datos backend con el frontend de la aplicación.
    • Valida que los usuarios pueden proporcionar las entradas deseadas utilizando los campos de la base de datos que se especifican en los documentos de especificación de requisitos comerciales.
  • Pruebas de claves e índices

Algunos de los puntos de control importantes de esta prueba son:

    • Asegúrese de que las restricciones de clave principal y clave externa requeridas ya estén presentes en las tablas requeridas.
    • Valide las referencias de las claves foráneas.
    • Asegúrese de que, en dos tablas, el tipo de datos de la clave principal y las claves externas correspondientes sean iguales.
    • Valide los nombres de todas las claves e índices según las convenciones de nomenclatura.
    • Compruebe los campos obligatorios y el tamaño y la longitud de los índices.
    • Asegúrese de la creación de índices agrupados e índices no agrupados en las tablas requeridas según los requisitos comerciales.
  • Pruebas de procedimientos almacenados

Algunos de los puntos de control importantes de esta prueba son:

    • Validar la adopción de las convenciones estándar de codificación requeridas, excepción y manejo de errores para todos los procedimientos almacenados por parte del equipo de desarrollo en todos los módulos de la aplicación bajo prueba.
    • Asegúrese de que el equipo de desarrollo haya cubierto todas las condiciones/bucles aplicando los datos de entrada necesarios a la aplicación que se está probando.
    • Compruebe si el equipo de desarrollo ha aplicado correctamente las operaciones TRIM o no cada vez que se obtuvieron los datos de las tablas de base de datos especificadas.
    • Asegúrese de que los resultados requeridos se generen ejecutando manualmente los Procedimientos almacenados.
    • Asegúrese de que los campos de la tabla se actualicen según lo especificado por la aplicación que se está probando mediante la ejecución manual de los procedimientos almacenados.
    • Asegúrese de que los activadores necesarios se invoquen implícitamente mediante la ejecución de los procedimientos almacenados.
    • Detectar y validar cualquier procedimiento almacenado no utilizado.
    • Validación de la condición nula a nivel de base de datos.
    • Asegúrese de que todos los procedimientos y funciones almacenados se hayan ejecutado y probado en la base de datos en blanco que se está probando.
    • Valide la integración general de los módulos de procedimientos almacenados como se especifica en los requisitos de la aplicación que se está probando.
  • Pruebas de activación

Algunos de los puntos de control importantes de esta prueba son:

    • Validar que se sigan las convenciones de codificación requeridas en la fase de codificación de los Triggers.
    • Asegúrese de que los disparadores ejecutados cumplan con las condiciones requeridas para las transacciones DML respectivas.
    • Compruebe si los datos se actualizan correctamente una vez que se han ejecutado los activadores.
    • Validar las funcionalidades como Actualizar, Insertar, Eliminar desencadena la funcionalidad de la aplicación bajo prueba.
  • Validaciones del servidor de base de datos

Algunos de los puntos de control importantes de esta prueba son:

    • Valide las configuraciones del servidor de la base de datos como se especifica en los requisitos comerciales.
    • Asegúrese de que el usuario requerido realice solo los niveles de acciones que requiere la aplicación bajo prueba.
    • Asegúrese de que el servidor de la base de datos sea capaz de satisfacer las necesidades del número máximo de transacciones de usuario permitidas según las especificaciones de requisitos comerciales.

Pruebas funcionales

La prueba de base de datos funcional es el proceso que garantiza que las transacciones y operaciones realizadas por los usuarios finales sean coherentes con las especificaciones comerciales.

Varios tipos de pruebas funcionales son:

  • Pruebas de caja negra

La prueba de caja negra se refiere al proceso que verifica varias funcionalidades al verificar la integración de la base de datos. En esto, los casos de prueba suelen ser simples y se utilizan para verificar los datos entrantes y salientes de la función. Se utilizan varias técnicas, como la técnica de gráficos de causa-efecto, el análisis de valor límite y la partición de equivalencia para probar la funcionalidad de la base de datos. Generalmente se realiza en las primeras etapas de desarrollo y cuesta menos en comparación con otras pruebas funcionales. Pero viene con algunos inconvenientes, como que no puede detectar algunos errores y no hay especificaciones sobre qué parte del programa debe probarse.

  • Pruebas de caja blanca

La prueba de caja blanca se ocupa de la estructura interna de la base de datos y los usuarios desconocen los detalles de la especificación. Esta prueba requiere activadores de base de datos y pruebas de vistas lógicas que admitan la refactorización de la base de datos. Además, las funciones de la base de datos, los disparadores, las vistas, las consultas SQL, etc., también se prueban en este. La prueba de caja blanca se utiliza para validar las tablas de la base de datos, los modelos de datos, el esquema de la base de datos, etc. Se adhiere a las reglas de integridad referencial y selecciona los valores de tabla predeterminados para verificar la consistencia de la base de datos. Las técnicas como la cobertura de condiciones, la cobertura de decisiones, la cobertura de declaraciones, etc. se utilizan a menudo para realizar pruebas de caja blanca. A diferencia de las pruebas de caja negra, los errores de codificación se pueden detectar fácilmente para eliminar los errores internos presentes en la base de datos. El único inconveniente de este tipo de prueba es que no cubre las sentencias SQL.

Pruebas no funcionales

La prueba no funcional es el proceso de realizar pruebas de carga, pruebas de estrés, verificar los requisitos mínimos del sistema que se requieren para cumplir con las especificaciones comerciales junto con la detección de riesgos y la optimización del rendimiento de la base de datos.

Los principales tipos de pruebas no funcionales son:

  • Pruebas de carga

La función principal de realizar pruebas de carga es validar el impacto en el rendimiento de la mayoría de las transacciones en ejecución en la base de datos. En esta prueba, se requiere que un probador verifique las siguientes condiciones −

    • ¿Cuál es el tiempo de respuesta requerido para ejecutar transacciones para varios usuarios ubicados de forma remota?
    • ¿Cuál es el tiempo que tarda la base de datos en obtener los registros específicos?
  • Pruebas de estrés

La prueba de estrés es un proceso de prueba que se realiza para identificar el punto de interrupción del sistema. Así, en esta prueba, se carga una aplicación hasta el punto en que falla el sistema. Este punto se conoce como punto de ruptura del sistema de base de datos. Las herramientas de prueba de estrés más utilizadas son LoadRunner y WinRunner .

Veamos ahora cuáles son las diversas etapas involucradas en las pruebas de la base de datos.

Etapas de prueba de la base de datos

La prueba de la base de datos no es un proceso tedioso e incluye varias etapas en el ciclo de vida de la prueba de la base de datos de acuerdo con los procesos de prueba.

Las etapas clave en las pruebas de bases de datos son:

  1. Configurar requisitos previos de prueba
  2. Ejecutar las pruebas
  3. Verificar el estado de la prueba
  4. Validar resultados
  5. Consolidar y publicar informe

Ahora que sabe qué es la prueba de base de datos y cómo realizarla, permítame arrojarle algo de luz sobre varias herramientas que se utilizan principalmente para la prueba de base de datos.

Herramientas de prueba de bases de datos

Existen numerosas herramientas en el mercado que se utilizan para generar los datos de prueba, administrarlos y finalmente realizar pruebas de bases de datos como pruebas de carga y pruebas de regresión, etc. A continuación, he enumerado una algunas de las herramientas preferidas:

Categoría Herramientas
Herramientas de seguridad de datos
  • Privacidad de datos de IBM Optim
Herramientas de prueba de carga
  • Rendimiento web
  • Vista de Rad
  • mercurio
Herramientas de generación de datos de prueba
  • Fábrica de datos
  • Generador de datos DTM
  • Datos Turbo
Herramienta de gestión de datos de prueba
  • Gestión de datos de prueba de IBM Optim
Herramientas de prueba unitaria
  • Unidad SQL
  • Unidad TSQL
  • DBFit
  • Unidad DB

Así que eso fue todo acerca de las pruebas de la base de datos. Con esto, me gustaría concluir este artículo. Espero que este artículo te haya ayudado a agregar valor a tus conocimientos. Para obtener más información sobre SQL o bases de datos, puede consultar nuestra lista de lectura completa aquí:Bases de datos Edureka .

Si desea obtener una capacitación estructurada en MySQL, consulte nuestra Capacitación para la certificación de MySQL DBA que viene con capacitación en vivo dirigida por un instructor y experiencia en proyectos de la vida real. Esta capacitación lo ayudará a comprender MySQL en profundidad y lo ayudará a dominar el tema.

¿Tiene alguna pregunta para nosotros? Menciónelo en la sección de comentarios de ”Pruebas de base de datos ” y me pondré en contacto con usted.