database crud testing through ui with sample test cases
¿Qué son las operaciones CRUD y cómo realizar pruebas CRUD a través de la interfaz de usuario?
¡Los seres humanos comenzaron a almacenar información incluso antes de varias décadas! Y en esos días, las bases de datos de archivos planos se usaban en el historial de computación donde todos los datos se almacenaban en un archivo.
Más tarde, a principios de la década de 1970, IBM desarrolló el primer modelo de base de datos relacional, que introdujo 'índices' para obtener fácilmente los datos.
Lo que vas a aprender:
- Descripción general de las operaciones CRUD
- ¿Por qué son importantes las pruebas de bases de datos?
- Las 4 funcionalidades básicas de la base de datos
- Definición de CRUD
- Pruebas CRUD
- ¿Cómo probar la funcionalidad CRUD de un software?
- Conclusión
- Lectura recomendada
Descripción general de las operaciones CRUD
Actualmente, el sistema de almacenamiento de datos más común es el Base de datos donde el software crea, lee, actualiza y elimina los datos a través de Consultas. El software informático puede responder a los requisitos del usuario de una manera más rápida y eficaz a través de consultas y bases de datos debidamente diseñadas.
Esto implica que la prueba y verificación de la base de datos es un factor muy importante.
Casi todos los administradores de pruebas consideran que las respuestas de la interfaz gráfica de usuario (GUI), como mensajes de error, mensajes de éxito, etc., son muy importantes. Esto se debe a que la GUI es la parte visible de una aplicación, que los usuarios pueden ver. Sin embargo, las pruebas de bases de datos son igualmente importantes.
Según mi experiencia, he visto a muchos probadores manuales que consideran esto como un trabajo tedioso, pero en realidad no lo es.
En este tutorial, discutiremos las pruebas de funcionalidad de base de datos de caja negra a través de la interfaz de usuario y consultas MySQL de una manera simple con ejemplos sencillos.
¿Por qué son importantes las pruebas de bases de datos?
Los puntos que se dan a continuación explicarán la importancia de las pruebas de bases de datos de una manera muy breve.
- Los datos son un activo importante y deben guardarse y protegerse.
- Las bases de datos se están volviendo complejas con las nuevas tecnologías y plataformas. Por lo tanto, aumentan las posibilidades de que se produzcan errores.
- Puede haber funcionalidades críticas asociadas con los valores almacenados en la base de datos.
- Los problemas en la base de datos o las consultas pueden provocar importantes problemas de funcionalidad.
- Para garantizar que los datos se asignen correctamente o no.
La prueba de la base de datos se puede realizar como una prueba unitaria, prueba de caja negra , prueba de caja blanca y texto de cuadro gris.
Las 4 funcionalidades básicas de la base de datos
El software basado en bases de datos generalmente tiene cuatro funcionalidades principales que quedarán claras en los ejemplos siguientes.
Ejemplo 1:
Facebook, el sitio web de redes sociales más famoso.
- Puedes crear una nueva cuenta
- Ver los detalles de su cuenta
- Editar los detalles de la cuenta
- Eliminar la cuenta
- Puedes crear comentarios
- Verlos
- Editarlos
- Borra los
Ejemplo 2:
LinkedIn, el famoso sitio web de búsqueda de empleo:
cómo abrir archivos jar en windows
- Puedes crear tu perfil
- Mirarlo
- Editarlo
- Bórralo
- Puedes agregar publicaciones
- Verlos
- Editarlos
- Borra los
¿Notaste un conjunto de actividades comunes aquí?
¡Sí! Tienes razón.
La mayoría del software admite estas funcionalidades de creación, visualización, edición y eliminación de donde el término CRUEL llega.
Definición de CRUD
En programación de computadoras, CRUEL significa Crear, Leer, Actualizar y Eliminar. Estas son las cuatro funciones principales y básicas del almacenamiento persistente. Suelen realizarse en aplicaciones de software a través de formularios.
- Crear - INSERTAR una entrada en la base de datos.
- Leer o Recuperar: SELECCIONE la entrada de la base de datos y visualícela.
- Actualizar - ACTUALIZAR la entrada total o parcialmente.
- Borrar o Destruir - SOLTAR / BORRAR la entrada.
Según los requisitos del software, los ciclos CRUD pueden variar.
Por ejemplo: a veces, el vendedor crea una cuenta y el usuario la ve. Es posible que el usuario no tenga el privilegio de editarlo o eliminarlo. Por otro lado, el requisito podría ser: el usuario crea su cuenta y el vendedor la verifica y aprueba. Estos ciclos son muy importantes desde el punto de vista del evaluador.
Para las funcionalidades discutidas anteriormente, hay una consulta correspondiente ejecutándose en la base de datos.
A continuación se muestran ejemplos de consultas MYSQL para cada acción
Acción | Consulta de muestra |
---|---|
CREAR | INSERT INTO nombre_tabla (columna1, columna2, columna3, ...) VALORES (valor1, valor2, valor3, ...); |
LEER | SELECCIONAR * de la tabla; |
ACTUALIZAR | ACTUALIZAR nombre_tabla SET column1 = value11, column2 = value22 DONDE condición; |
ELIMINAR | ELIMINAR DE LA TABLA nombre_tabla donde columna1 = 'valor11'; |
Tres variaciones de CRUD son PAN (Examinar, Leer, Editar, Agregar, Eliminar), DAVE (Eliminar, Agregar, Ver, Editar) y TONTERÍAS (Crear, replicar, adjuntar, procesar).
Pruebas CRUD
La prueba CRUD es una prueba de caja negra de la funcionalidad de la base de datos.
Como sabemos, las pruebas de caja negra consideran el sistema de software de prueba como una “caja negra y las pruebas se realizan a través de la interfaz de usuario.
Entendemos que cada acción de front-end, como el registro de la cuenta, la edición de datos personales, la visualización de detalles, la eliminación de la cuenta, etc. tiene una acción CRUD correspondiente en la base de datos. La prueba CRUD se realiza para verificar si estas acciones se reflejan en la base de datos correctamente o no.
Las pruebas CRUD son diferentes de las pruebas frontales comunes de caja negra donde verificamos mensajes de éxito como 'Cuenta creada correctamente' después de un registro de usuario, etc. Aquí tenemos que verificar si los detalles de la cuenta se ingresan realmente en la base de datos o no.
Hay dos formas en las que un probador manual puede hacer esto:
# 1) Ejecutar consultas por nuestra cuenta– Los probadores con un buen conocimiento del lenguaje SQL y los requisitos de software pueden realizar sus propias consultas para probar la base de datos. De esta forma se pueden comprobar todos los casos posibles con buenas consultas.
# 2) Ejecute consultas con la ayuda de un desarrollador.– Los evaluadores pueden comenzar verificando la interfaz de usuario de la aplicación y obtener consultas del desarrollador.
Se deben considerar las siguientes preguntas al escribir casos de prueba para operaciones CRUD:
- ¿Qué tipo de acción CRUD es válida y cuál no es válida para una aplicación de prueba?
- ¿Qué tipo de relación tienen / deberían tener las acciones CRUD entre sí?
- ¿Cuándo se ejecutan las acciones CRUD?
- ¿Quién accede a la funcionalidad CRUD? ¿El sistema establece diferentes privilegios para diferentes usuarios?
El proceso de prueba general para Prueba de base de datos no es muy diferente de las pruebas de GUI de caja negra manuales habituales.
Me gusta,
Paso 1: Prepare el entorno de prueba.
Paso 2: Ejecute los pasos de la prueba.
Paso 3: Verifique el resultado de la prueba.
Paso 4: Valide los resultados reales de acuerdo con los resultados esperados.
Paso 5: Informar errores y otros hallazgos.
Para comprobar el resultado de la prueba, se utilizan la respuesta de la GUI y el resultado de la consulta. Para las pruebas de caja negra CRUD, solo necesitamos una consulta, que es SELECT.
Como todos sabemos, las bases de datos almacenan datos. Cuando necesitamos recuperar los datos, se utiliza la consulta SELECT. En las pruebas de caja negra, solo tenemos que usar esta consulta para ver si las acciones a través de la interfaz de usuario muestran reflejos adecuados en la base de datos o no.
'SELECT' se puede utilizar de las siguientes formas:
#1) Si un probador desea verificar y verificar todos los datos, puede usar el símbolo de inicio (*) en la consulta SELECT. Esta es la forma más simple de consulta SELECT.
|_+_|La declaración anterior selecciona todos los campos de todas las filas de la tabla table_name.
# 2) En algunos casos, el resultado de la primera consulta puede ser complicado. Si un evaluador está interesado solo en algunos campos, entonces se puede usar el siguiente script.
convertidor de youtube a mp4 de alta calidad|_+_|
La declaración anterior selecciona los campos, 'campo_1', 'campo_2' y 'campo_3' de todas las filas de la tabla table_name.
#3) Si un evaluador desea ver los resultados en función de cualquier criterio, se puede utilizar la cláusula WHERE.
|_+_|La declaración anterior selecciona el campo 'campo_1' de todas las filas de la tabla table_name, donde 'campo2' es 'éxito'.
¿Cómo probar la funcionalidad CRUD de un software?
Considera lo siguiente Ejemplo de una interfaz de usuario, que permite ciertos privilegios de usuario para usar la base de datos MySQL para almacenar los datos.
EJEMPLO | DETALLES DE LA BASE DE DATOS |
---|---|
1. Puede CREAR un producto con todos los detalles, incluido el nombre del producto, la descripción del producto y el precio del producto mediante el formulario 'Agregar producto'. | Base de datos: Shopping_DB Tabla: producto Campos: product_name, product_details, product_price Crea una fila en la tabla 'producto' con detalles agregados en los campos correspondientes. |
2. Puede LEER los detalles del nombre del producto, la descripción del producto, el precio del producto en la 'Página de detalles del producto'. | Base de datos: Shopping_DB Tabla: producto Campos: product_name, product_details, product_price Selecciona todos los datos o selecciona un dato particular de la tabla 'productos' |
3. Puede ACTUALIZAR el nombre del producto, la descripción del producto, el precio del producto mediante el formulario 'Edición de producto'. | Base de datos: Shopping_DB Tabla: producto Campos: product_name, product_details, product_price Actualizar todos los detalles o detalles particulares en una fila en particular en la tabla 'productos' |
4. Puede BORRAR el producto | Base de datos: Shopping_DB Tabla: producto Campos: product_name, product_details, product_price Elimine todos los detalles en la tabla de 'productos' soltando la tabla o eliminando una fila en particular de ella. |
Veamos cómo se puede verificar la funcionalidad CRUD para este caso.
Nota :Realice siempre pruebas CRUD en los volcados de la base de datos porque esta prueba puede provocar cambios en la base de datos. El siguiente comando se puede utilizar para realizar un volcado de toda la base de datos.
$ mysqldump -u (uname) -p (pass) Shopping_DB> Shopping_DB_backup.sql
# 1) CREAR funcionalidad
Al agregar un nuevo artículo de producto, se pueden seguir los siguientes pasos:
- Cargue el formulario 'Agregar producto'.
- Ingrese el nombre del producto, diga 'nombre de prueba'.
- Ingrese la descripción del producto, diga 'esto es un detalle del producto de prueba'.
- Ingrese el precio del producto, diga '100'.
- Envíe el formulario.
Comprobando el resultado:
- El probador verifica manualmente si el producto se muestra con todos los detalles en la parte frontal de la aplicación de software.
- El probador ejecuta la consulta en el servidor de la base de datos MYSQL para verificar si la fila en particular está presente
Consulta:
aplicaciones que te permiten descargar videos de youtube|_+_|
Resultado de la consulta de MySQL:
Se debe mostrar una fila con los detalles correspondientes como,
mysql> SELECT * FROM productos DONDE product_name = 'nombre de prueba'; +-------------+-----------------------------+-----------------+ | nombre_producto | product_details | precio_producto | +-------------+-----------------------------+-----------------+ | nombre de la prueba | estos son los detalles del producto de prueba | 100 | |
Otros casos a considerar:
- Para algunos sistemas, diferentes usuarios tendrán diferentes privilegios. En ese caso, es posible que los evaluadores deban verificar la respuesta para cada función de usuario.
- Si no se permiten productos duplicados, un evaluador puede verificarlo agregando un producto con los mismos detalles una vez más. Esta vez la base de datos no debería tener una segunda entrada correspondiente al mismo producto.
- Si el software permite la creación de varios productos a la vez, el evaluador puede verificar si todos los detalles de todos los productos del envío se ingresaron en la base de datos correctamente o no.
- Pruebe diferentes combinaciones de entrada.
- Compruebe lo que sucede durante el tiempo de inactividad del servidor.
# 2) Funcionalidad LEER
Para comprobar si la entrada creada es legible, se pueden seguir los siguientes pasos:
- Cree algunos productos con diferentes combinaciones de entrada a través de la funcionalidad CREAR, diga el nombre de la prueba 1, el nombre de la prueba 2, el nombre de la prueba 3.
- Intente buscar los productos.
Comprobando el resultado:
- El probador verifica manualmente si los detalles del producto son correctos.
- Tester compara los detalles con los guardados en la base de datos.
Consulta:
SELECCIONE * FROM productos DONDE nombre_producto = 'nombre de prueba 1' O nombre_producto = 'nombre de prueba 12' O nombre_producto = 'nombre de prueba 3'; |
Resultado de la consulta de MySQL:
Deben mostrarse los detalles de los productos seleccionados. El evaluador puede verificar y comparar esto con los resultados en la interfaz de usuario.
mysql> SELECT * FROM productos DONDE product_name = 'nombre de prueba 1' O product_name = 'nombre de prueba 12' O product_name = 'nombre de prueba 3'; +-------------+-----------------------------+-----------------+ | nombre_producto | product_details | precio_producto | +-------------+-----------------------------+-----------------+ | nombre de prueba 1 | este es el producto de prueba detail1 | 100 | | nombre de prueba 2 | este es el producto de prueba detail2 | 100 | | nombre de prueba 3 | este es el producto de prueba detail3 | 100 | |
Otros casos a considerar:
- Vea los elementos de uno en uno.
- Ver varios elementos a la vez.
- Intentando ver un elemento que no existe.
- Intente buscar con diferentes condiciones.
- Intente verificar la funcionalidad para diferentes roles de usuario.
- Compruebe lo que sucede durante el tiempo de inactividad del servidor.
# 3) ACTUALIZAR la funcionalidad
Para editar o actualizar entradas existentes, se pueden seguir los siguientes pasos:
- Cree un producto utilizando la funcionalidad CREAR.
- Edite diferentes campos del producto, diga 'nombre de la prueba' en 'V Neck Top'.
- Enviar
Comprobando el resultado:
- El probador verifica manualmente que los detalles del producto hayan cambiado
- El probador ejecuta la consulta MYSQL y ve los detalles
Consulta:
|_+_|Resultado de la consulta de MySQL:
Debería mostrarse una fila con los detalles correspondientes.
mysql> SELECT * FROM productos DONDE product_name = 'V Neck Top'; +-------------+-----------------------------+-----------------+ | nombre_producto | product_details | precio_producto | +-------------+-----------------------------+-----------------+ | Top con cuello en V | estos son los detalles del producto de prueba | 100 | +-------------+-----------------------------+-----------------+ |
Si busca con un nombre de producto antiguo, la base de datos no debería devolver los detalles.
Otros casos a considerar:
- Actualice varios elementos a la vez.
- Actualice a un valor clave que ya exista.
- Actualice todos los detalles o detalles parciales.
- Actualice los campos con diferentes combinaciones de entrada.
- Consulte la función actualizada para conocer los diferentes privilegios.
- Compruebe lo que sucede durante los tiempos de inactividad del servidor.
# 4) BORRAR Funcionalidad
Para verificar la funcionalidad de eliminación, se pueden seguir los siguientes pasos:
- Crea un producto con la funcionalidad CREAR.
- Elimina el producto.
Comprobando el resultado:
- El probador comprueba manualmente si el producto se elimina de la interfaz de usuario
- Tester comprueba manualmente la base de datos MySQL y confirma que se ha eliminado la fila correspondiente.
Consulta :
|_+_|Resultado de la consulta de MySQL:
Esto debería mostrar el resultado de la consulta como se muestra a continuación.
|_+_|Otros casos a considerar:
- Elimina varios elementos en una sola solicitud.
- Elimina un elemento actualizado.
- Tome dos pestañas e intente dar una solicitud de eliminación para un producto de ambas pestañas por completo.
Conclusión
La prueba de la base de datos es muy importante ya que confirma la seguridad y confiabilidad de una aplicación de software. La mayoría de las aplicaciones de software se ocupan de crear, leer, actualizar y eliminar datos de la base de datos. Según los requisitos del software, los ciclos CRUD pueden variar. Un evaluador debe planificar casos de prueba basados en el ciclo CRUD.
Las funcionalidades CRUD se pueden probar manualmente y verificar desde la interfaz de usuario y la base de datos. La consulta SELECT se puede utilizar para verificar los cambios en la base de datos correspondientes a cada operación CRUD.
¿Eres un experto en pruebas CRUD? ¿Tiene algún dato interesante para compartir con nuestros lectores que son nuevos en CRUD? ¡No dude en expresar sus pensamientos / sugerencias en la sección de comentarios a continuación!
Lectura recomendada
- Prueba de base de datos con JMeter
- Documentos de preguntas de muestra de certificación de pruebas ISTQB con respuestas
- Mejores herramientas de prueba de software 2021 (Herramientas de automatización de pruebas de control de calidad)
- Diferencias clave entre las pruebas de caja negra y las pruebas de caja blanca
- Descarga del libro electrónico Testing Primer
- Un enfoque simple para pruebas de XML para bases de datos
- Más de 40 mejores herramientas de prueba de bases de datos: soluciones de prueba de datos populares
- Tutorial de prueba de GUI: una guía completa de prueba de interfaz de usuario (UI)