PIXEL FACEBOOK
logo-blanco

Consejos Prácticos Para Hacer Pruebas En Una Base De Datos

testing bases de datos

Lo que vas a encontrar...

Una base de datos es una de las partes mas importantes de una aplicación de software en estos días. No importa si se trata de una aplicación web o de escritorio, tipo cliente/servidor o servidor/cliente, empresa o negocio individual, una base de datos funciona desde el servidor.

Según la complejidad de la aplicación aumenta la necesidad robustez y seguridad de la base de datos. De la misma manera, para las aplicaciones con una alta frecuencia en las transacciones (por ejemplo, la banca o aplicación de finanzas), la necesidad de la de hacer pruebas en una base de datos se hace necesaria.

¿Qué bases de datos existen?

Hoy en día existen varias herramientas de bases de datos o tipos de base de datos que están disponibles en el mercado, por ejemplo, MS-Access 2010, Server 2008 R2 MS SQL, Oracle 10g, Oracle Financial, MySQL, PostgreSQL, DB2, etc. Todos estos varían en costo, robustez, prestaciones de servicios y seguridad. Cada uno de estas bases de datos poseen sus propias ventajas y desventajas. Una cosa es cierta; una aplicación de negocios debe ser desarrollada usando una de estas u otras herramientas de base de datos.

El usuario final de toda aplicación que use una base de datos, usara el paradigma CRUD:

¿Que es el modelo CRUD en una base de datos?

C: Crear – Cuando el usuario «Guarda» cualquier nueva transacción o información a la base de datos.
R: Recuperar – Cuando se lleva a cabo por parte del usuario la acción de ‘Buscar’ o ‘Ver’ la información almacenada en la base de datos.
U: Actualización – cuando, se lleva a cabo la operación de «actualizar» la información en la base de datos. Normalmente cuando se ‘Edita’ o ‘Modifica’ un registro existente del usuario.
D: Eliminar – cuando el usuario ‘Elimina’ o borra un registro del sistema.

paradigma CRUD mysql

No importa en absoluto que base de datos estés usando, mucho menos el lenguaje de programación que uses para conectar una base de datos o si has realizado una correcta normalizacion de base de datos; el usuario final no tiene por que preocuparse por las sub-consultas, si existe un trigger o un procedimiento almacenado.

¿Que se debe probar en una base de datos?

1) Mapeo de datos en una base de datos:

Se debe asegurar que sin importar la parte visual (front-end) que se encuentre la aplicación,  todas las operaciones CRUD, deben de funcionar correctamente.

2) Propiedades ACID en una base de datos:

Las propiedades ACID de una base de datos se refieren a la «atomicidad», «consistencia», «aislamiento» y «durabilidad». Las pruebas adecuadas de estas cuatro propiedades en una base de datos se debe realizar durante la actividad de pruebas.

3) Asegurar la integridad de los datos:

Ten en cuenta que los diferentes módulos de una aplicación (pantallas es decir, o formularios) usan los mismos datos de diferentes «vistas» y realizan todas las operaciones CRUD sobre los datos que obtienen. En ese caso, que sea seguro que el último estado de los datos se refleja en todas partes. El sistema debe mostrar los valores actualizados y más recientes o el estado de dichos datos compartidos en todos los formularios y las vistas. A esto se llama la integridad de datos.

4) Asegurar la exactitud de las reglas comerciales implementados:

Hoy en día, las bases de datos no están destinadas sólo para almacenar los registros. De hecho, las bases de datos se han convertido en herramientas muy potentes que proporcionan un amplio soporte a los desarrolladores con el fin de implementar la lógica de negocio a nivel de base de datos. Algunos ejemplos simples de características de gran alcance de las bases de datos son la ‘integridad referencial’, restricciones relacionales, triggers y procedimientos almacenados. Por lo tanto, el uso de estas y muchas otras características ofrecidas por las bases de datos, los desarrolladores implementan la lógica de negocio en el nivel de base de datos. El teste debe asegurarse de que la lógica de negocio en marcha es correcta y funciona con precisión.

Cómo Hacer Pruebas En Una Base De Datos

1. Crear tus propias consultas

Con el fin de probar el funcionamiento en una base de datos de una manera adecuada y precisa, en primer lugar un tester debe tener muy buenos conocimientos de SQL y especialmente de DML (Data Manipulation Language). Se realizará alguna operación CRUD con la interfaz de usuario de la aplicación, y se verificará el resultado usando una  consulta SQL.

Esta es la forma mejor y más robusta para hacer pruebas en una base de datos, especialmente para aplicaciones con bajo y medio nivel de complejidad. Sin embargo, los dos pre-requisitos descritos son necesarias.

Por otra parte, si la aplicación es bastante compleja, entonces puede ser difícil o imposible para el tester escribir toda las sentencias SQL necesarias. Sin embargo, para algunas consultas complejas, el tester puede obtener ayuda del desarrollador también.

2. Probar cada tabla de la base de datos

Si el tester no es bueno en SQL, entonces él o ella puede verificar el resultado de la operación CRUD, mediante la visualización de las tablas (relacionadas) en la base de datos. Sin embargo, de esta manera puede ser un poco tedioso y engorroso, especialmente cuando la base de datos y las tablas tienen gran cantidad de datos 🙁

3. Obtener las consultas del desarrollador

Esta es la forma más sencilla para el teste de probar la base de datos. Realizar cualquier operación CRUD mediante la interfaz gráfica de usuario y verificar su impacto mediante la ejecución de la consulta SQL que se obtiene del desarrollador.

testing en una base de datosPor lo tanto, este método parece elección fácil y bueno para las pruebas de la base de datos. Sin embargo, su inconveniente es el caos. ¿Qué pasa si la consulta propuesta por el desarrollador es semánticamente mal o no cumple con el requisito de que el usuario correctamente? En esta situación, el cliente deberá informar del problema y exigirá su corrección como el mejor de los casos. Mientras, el peor de los casos es que el cliente puede negarse a aceptar la solicitud.

Finalmente

La base de datos es la parte central y crítica de casi todas las aplicaciones de software. Por lo tanto las pruebas en una base de datos de una aplicación requiere gran atención, buenos conocimientos de SQL, el conocimiento adecuado de la estructura de la base de datos y la capacitación adecuada.

Facebook
Twitter
LinkedIn
WhatsApp
  1. Avatar de Mervy GonzalezMervy Gonzalez dice:

    Excelente Explicacion muy deacuerdo Contigo en casi todo

Deja una respuesta

Artículos Relacionados

Síguenos