database crud testing through ui with sample test cases
Què són les operacions CRUD i com realitzar proves CRUD mitjançant la interfície d'usuari?
Els éssers humans van començar a emmagatzemar informació fins i tot abans de diverses dècades. I en aquells dies, les bases de dades de fitxers plans s’utilitzaven a l’historial informàtic on s’emmagatzemaven totes les dades en un fitxer.
Més tard, a principis dels anys setanta, IBM va desenvolupar el primer model de base de dades relacional, que va introduir 'índexs' per obtenir fàcilment les dades.
Què aprendreu:
- Visió general de les operacions CRUD
- Per què és important la prova de bases de dades?
- Les 4 funcions bàsiques de la base de dades
- Definició de CRUD
- Proves CRUD
- Com provar la funcionalitat CRUD d'un programari?
- Conclusió
- Lectura recomanada
Visió general de les operacions CRUD
Actualment, el sistema d'emmagatzematge de dades més comú és el Base de dades on el programari crea, llegeix, actualitza i suprimeix les dades mitjançant consultes. El programari informàtic pot respondre als requisits de l’usuari d’una manera més ràpida i eficaç mitjançant una base de dades i consultes adequadament dissenyades.
Això implica que la prova i verificació de la base de dades és un factor molt important.
Gairebé tots els gestors de proves consideren que les respostes de la interfície gràfica d’usuari (GUI), com ara missatges d’error, missatges d’èxit, etc. Això es deu al fet que la interfície gràfica d’usuari és la part visible d’una aplicació que els usuaris poden veure. No obstant això, les proves de bases de dades són igualment importants.
Per la meva experiència, he vist molts provadors manuals que consideren això com una feina tediosa, però en realitat no ho és.
En aquest tutorial, analitzarem les proves de funcionalitat de la base de dades de caixes negres a través de consultes d’interfície d’usuari i MySQL d’una manera senzilla amb exemples senzills.
Per què és important la prova de bases de dades?
Els punts que s'indiquen a continuació explicaran la importància de les proves de bases de dades d'una manera molt breu.
- Les dades són un actiu important i cal guardar-les i protegir-les.
- Les bases de dades són cada vegada més complexes amb les noves tecnologies i plataformes. Per tant, augmenten les possibilitats d’errors.
- Hi pot haver funcions crítiques associades als valors emmagatzemats a la base de dades.
- Els problemes a la base de dades o les consultes poden provocar problemes de funcionalitat importants.
- Per garantir que les dades estiguin mapades correctament o no.
La prova de bases de dades es pot fer com a prova unitària, prova de caixa negra , prova de caixa blanca i text de quadre gris.
Les 4 funcions bàsiques de la base de dades
El programari basat en bases de dades té generalment quatre funcions principals, que es desprenen dels exemples següents.
Exemple 1:
Facebook, el lloc web de xarxes socials més famós.
- Podeu crear un compte nou
- Consulteu els detalls del vostre compte
- Editeu els detalls del compte
- Suprimiu el compte
- Podeu crear comentaris
- Veure'ls
- Editeu-los
- Esborreu-los
Exemple 2:
LinkedIn, el famós lloc web de recerca de feina:
millor convertidor gratuït de mov a mp4
- Podeu crear el vostre perfil
- Veure-ho
- Editeu-lo
- Esborra-ho
- Podeu afegir publicacions
- Veure'ls
- Editeu-los
- Esborreu-los
Heu notat un conjunt d'activitats comunes aquí?
Sí! Tens raó.
La majoria del programari admet aquestes funcionalitats de creació, visualització, edició i supressió d’on es troba el terme CRUEL ve.
Definició de CRUD
En la programació d’ordinadors, CRUEL significa Crea, Llegeix, Actualitza i Suprimeix. Aquestes són les quatre funcions principals i bàsiques de l’emmagatzematge persistent. Sovint es fan en aplicacions de programari mitjançant formularis.
- Crear - INSERTAR una entrada a la base de dades.
- Llegiu o Recupera - SELECCIONA l'entrada de la base de dades i visualitza-la.
- Actualització - ACTUALITZAR l'entrada totalment o parcialment.
- Suprimeix o Destrueix: ELIMINA / ESBORRA l'entrada.
En funció dels requisits del programari, els cicles CRUD poden variar.
Per exemple: de vegades, el venedor crea un compte i l'usuari el veu. És possible que l’usuari no tingui el privilegi d’editar-lo o suprimir-lo. D'altra banda, el requisit podria ser: l'usuari crea el seu compte i el venedor el verifica i l'aprova. Aquests cicles són molt importants des del punt de vista dels provadors.
Per a les funcionalitats comentades anteriorment, hi ha una consulta corresponent en execució a la base de dades.
A continuació es mostren exemples de consultes MYSQL per a cada acció
Acció | Consulta de mostra |
---|---|
CREAR | INSERTAR A nom_tabla (columna1, columna2, columna3, ...) VALORS (valor1, valor2, valor3, ...); |
LLEGIR | SELECT * de la taula; |
ACTUALITZACIÓ | ACTUALITZACIÓ nom_tabla SET columna1 = valor11, columna2 = valor22 ON condició; |
ESBORRAR | ELIMINA DE LA TAULA nom_tabla on columna1 = 'valor11'; |
Hi ha tres variacions de CRUD PA (Navegar, llegir, editar, afegir, suprimir), DAVE (Esborrar, afegir, visualitzar, editar) i CRAP (Crea, replica, afegeix, processa).
Proves CRUD
La prova CRUD és una prova de caixa negra de la funcionalitat de la base de dades.
Com sabem, les proves de Black Box consideren el sistema de programari de prova com un “black-box” i les proves es realitzen mitjançant la IU.
Vam entendre que totes les accions front-end com el registre del compte, l'edició de dades personals, la visualització de detalls, la supressió del compte, etc. tenen una acció CRUD corresponent a la base de dades. Es fan proves CRUD per comprovar si aquestes accions es reflecteixen correctament a la base de dades o no.
Les proves CRUD són diferents de les proves habituals de la caixa negra on comprovem si hi ha missatges d’èxit com ara “Compte creat correctament” després del registre d’un usuari, etc. Aquí hem de comprovar si els detalls del compte s’estan introduint a la base de dades o no.
Un provador manual pot fer-ho de dues maneres:
# 1) Executeu consultes pel nostre compte- Els provadors amb una bona comprensió del llenguatge SQL i dels requisits de programari poden fer les seves pròpies consultes per provar la base de dades. D’aquesta manera es poden verificar tots els casos possibles amb bones consultes.
# 2) Executeu consultes amb l'ajut d'un desenvolupador- Els verificadors poden començar verificant la interfície d'usuari de l'aplicació i obtenint consultes del desenvolupador.
S’han de tenir en compte les preguntes següents en escriure casos de prova per a operacions CRUD:
- Quin tipus d'acció CRUD és vàlida i què no és vàlida per a una aplicació de prova?
- Quin tipus de relació tenen / haurien de tenir les accions CRUD entre elles?
- Quan s’executen les accions CRUD?
- Qui accedeix a la funcionalitat CRUD? El sistema estableix diferents privilegis per a diferents usuaris?
El procés general de proves per a Proves de DB no és molt diferent de les proves habituals de la GUI de la caixa negra.
M'agrada,
Pas 1: Prepareu l’entorn de prova.
Pas 2: Executeu els passos de la prova.
Pas 3: Comproveu el resultat de la prova.
Pas 4: Valideu els resultats reals segons els resultats esperats.
Pas 5: Informeu d’errors i altres troballes.
Per comprovar el resultat de la prova, s’utilitzen la resposta GUI i el resultat de la consulta. Per a les proves de caixa negra de CRUD, només necessitem una consulta, que és SELECT.
Com tots sabem, les bases de dades emmagatzemen dades. Quan hem de recuperar les dades, s’utilitza la consulta SELECT. A les proves de caixa negra, només hem d’utilitzar aquesta consulta per veure si les accions a través de la interfície d’usuari mostren reflexos adequats a la base de dades o no.
'SELECT' es pot utilitzar de les maneres següents:
# 1) Si un provador vol comprovar i verificar totes les dades, pot utilitzar el símbol d'inici (*) a la consulta SELECT. Aquesta és la forma més senzilla de consulta SELECT.
SELECT * FROM table_name;
La sentència anterior selecciona tots els camps de totes les files de la taula table_name.
# 2) En alguns casos, el resultat de la primera consulta pot ser desordenat. Si un provador només està interessat en alguns camps, es pot utilitzar el següent script.
editor de scripts de shell gratuït per a Windows
SELECT ‘field_1’, ‘field_2’, ‘field_3’ FROM table_name;
L'afirmació anterior selecciona els camps 'camp_1', 'camp_2' i 'camp_3' de totes les files de la taula nom_tabla.
# 3) Si un provador vol veure els resultats segons qualsevol criteri, es pot utilitzar la clàusula WHERE.
SELECT ‘field_1’ FROM table_name WHERE field_2 = ‘success’;
La sentència anterior selecciona el camp 'camp_1' de totes les files de la taula nom_tabla, on 'camp2' és 'èxit'.
Com provar la funcionalitat CRUD d'un programari?
Penseu en el següent Exemple d'una interfície d'usuari, que permet certs privilegis d'usuari per utilitzar la base de dades MySQL per emmagatzemar les dades.
EXEMPLE | DETALLS DE LA BASE DE DADES |
---|---|
1. Es pot CREAR un producte amb tots els detalls, inclosos el nom del producte, la descripció del producte i el preu del producte mitjançant el formulari 'Afegeix producte' | Base de dades: Shopping_DB Taula: producte Camps: product_name, product_details, product_price Crea una fila a la taula 'producte' amb els detalls afegits als camps corresponents |
2. PODEU LLEGIR els detalls del nom del producte, la descripció del producte i el preu del producte a la pàgina 'Detalls del producte'. | Base de dades: Shopping_DB Taula: producte Camps: product_name, product_details, product_price Selecciona totes les dades o selecciona unes dades concretes de la taula 'productes' |
3. Podeu ACTUALITZAR el nom del producte, la descripció del producte i el preu del producte mitjançant el formulari 'Edició del producte'. | Base de dades: Shopping_DB Taula: producte Camps: product_name, product_details, product_price Actualitzeu tots els detalls o detalls particulars en una fila concreta de la taula 'productes' |
4. Es pot esborrar el producte | Base de dades: Shopping_DB Taula: producte Camps: product_name, product_details, product_price Per suprimir tots els detalls de la taula 'productes', deixeu-la caure o elimineu una fila concreta. |
Comprovem com es pot comprovar la funcionalitat de CRUD per a aquest cas.
Nota :Realitzeu sempre proves CRUD als abocaments de la base de dades perquè aquesta prova pot causar canvis a la base de dades. L'ordre següent es pot utilitzar per obtenir un bolcat de tota la base de dades.
$ mysqldump -u (uname) -p (pass) Shopping_DB> Shopping_DB_backup.sql
# 1) CREAR Funcionalitat
Afegint un producte nou, es poden seguir els passos següents:
- Carregueu el formulari 'Afegeix producte'.
- Introduïu el nom del producte, digueu 'nom de la prova'.
- Introduïu la descripció del producte i digueu: 'Aquest és el detall del producte de prova'.
- Introduïu el preu del producte, digueu '100'.
- Envieu el formulari.
Comprovació del resultat:
- El provador verifica manualment si el producte es mostra amb tots els detalls a la part frontal de l'aplicació de programari.
- Tester executa la consulta al servidor de base de dades MYSQL per comprovar si hi ha la fila en particular
Consulta:
com escriure casos de prova al full Excel
SELECT * FROM products WHERE product_name = ‘test name’;
Resultat de la consulta de MySQL:
S'ha de mostrar una fila amb els detalls corresponents, com ara,
mysql> SELECCIONA * DE PRODUCTES WHERE nom_producte = 'nom de prova'; + ------------- + ----------------------------- + ----- ------------ + | nom_producte | detalls_producte | preu_producte | + ------------- + ----------------------------- + ----- ------------ + | nom de la prova | es tracta de detalls del producte de prova | 100 | |
Altres casos a tenir en compte:
- Per a alguns sistemes, diferents usuaris tindran privilegis diferents. En aquest cas, és possible que els verificadors hagin de comprovar la resposta de cada rol de l'usuari.
- Si no es permeten productes duplicats, un verificador pot comprovar-ho afegint un producte amb les mateixes dades una vegada més. Aquesta vegada, la base de dades no hauria de tenir una segona entrada corresponent al mateix producte.
- Si el programari permet la creació de diversos productes alhora, el verificador pot comprovar si tots els detalls de tots els productes de l’enviament s’han introduït correctament a la base de dades o no.
- Proveu diferents combinacions d'entrada.
- Comproveu què passa durant el temps d'inactivitat del servidor.
# 2) LLEGIR Funcionalitat
Per comprovar si l’entrada creada es pot llegir, es poden seguir els passos següents:
- Creeu alguns productes amb diferents combinacions d’entrada mitjançant la funcionalitat CREA, per exemple, nom de prova 1, nom de prova 2, nom de prova 3.
- Proveu de cercar els productes.
Comprovació del resultat:
- El verificador verifica manualment si els detalls del producte són correctes.
- Tester compara els detalls amb els guardats a la base de dades.
Consulta:
SELECCIÓ * DE PRODUCTES WHERE nom_producte = 'nom de prova 1' O nom_producte = 'nom de prova 12' O nom_producte = 'nom de prova 3'; |
Resultat de la consulta de MySQL:
Cal mostrar els detalls dels productes seleccionats. El comprovador ho pot verificar i comparar amb els resultats de la IU.
mysql> SELECCIONA * DE PRODUCTES WHERE nom_producte = 'nom de prova 1' O nom_producte = 'nom de prova 12' O nom_producte = 'nom de prova 3'; + ------------- + ----------------------------- + ----- ------------ + | nom_producte | detalls_producte | preu_producte | + ------------- + ----------------------------- + ----- ------------ + | nom de la prova 1 | aquest és el producte detallat de prova1 | 100 | | nom de la prova 2 | aquest és el producte detallat de prova2 | 100 | | nom de la prova 3 | aquest és el producte de prova3 | 100 | |
Altres casos a tenir en compte:
- Consulteu els elements d’un en un.
- Veure diversos elements alhora.
- Intentant veure un element que no existeix.
- Proveu de cercar amb diferents condicions.
- Proveu de comprovar la funcionalitat per a diferents rols d'usuari.
- Comproveu què passa durant el temps d'inactivitat del servidor.
# 3) FUNCIONALITAT ACTUALITZACIÓ
Per editar o actualitzar entrades existents, es poden seguir els passos següents:
- Creeu un producte mitjançant la funcionalitat CREATE.
- Editeu els diferents camps del producte, digueu 'nom de la prova' a 'V Neck Top'.
- Presentar
Comprovació del resultat:
- El provador verifica manualment que els detalls del producte han canviat
- Tester executa la consulta MYSQL i en veu els detalls
Consulta:
SELECT * FROM products WHERE product_name = ‘V Neck Top’;
Resultat de la consulta de MySQL:
S'ha de mostrar una fila amb els detalls corresponents.
mysql> SELECCIONA * DE PRODUCTES ON product_name = 'V Neck Top'; + ------------- + ----------------------------- + ----- ------------ + | nom_producte | detalls_producte | preu_producte | + ------------- + ----------------------------- + ----- ------------ + | Top amb coll en V | es tracta de detalls del producte de prova | 100 | + ------------- + ----------------------------- + ----- ------------ + |
Si cerqueu amb un nom de producte antic, la base de dades no hauria de retornar-ne la informació.
Altres casos a tenir en compte:
- Actualitzeu diversos elements alhora.
- Actualitzeu a un valor clau que ja existeix.
- Actualitzeu tots els detalls o detalls parcials.
- Actualitzeu els camps amb diferents combinacions d'entrada.
- Comproveu la funció actualitzada per a diferents privilegis.
- Comproveu què passa durant els temps d'inactivitat del servidor.
# 4) ESBORRAR Funcionalitat
Per comprovar la funcionalitat de supressió, podeu seguir els passos següents:
- Creeu un producte amb la funcionalitat CREATE.
- Suprimiu el producte.
Comprovació del resultat:
- El provador comprova manualment si el producte s’elimina de la interfície d’usuari
- Tester comprova manualment la base de dades MySQL i confirma que s'ha eliminat la fila corresponent.
Consulta :
SELECT * FROM products WHERE product_name = ‘test name’;
Resultat de la consulta de MySQL:
Això hauria de mostrar el resultat de la consulta com es mostra a continuació.
mysql>SELECT * FROM products WHERE product_name = ‘test name’; Empty set (0.00 sec)
Altres casos a tenir en compte:
- Suprimiu diversos elements d'una sola sol·licitud.
- Suprimiu un element actualitzat.
- Preneu dues pestanyes i proveu de fer una sol·licitud de supressió d'un producte de totes dues pestanyes.
Conclusió
Les proves de bases de dades són molt importants, ja que confirmen la seguretat i la fiabilitat d'una aplicació de programari. La majoria d’aplicacions de programari s’ocupen de crear, llegir i actualitzar i suprimir dades de / a la base de dades. Segons els requisits de programari, els cicles CRUD poden variar. Un provador hauria de planificar casos de prova en funció del cicle CRUD.
Les funcionalitats CRUD es poden provar manualment i verificar des de la interfície d’usuari i la base de dades. La consulta SELECT es pot utilitzar per verificar els canvis a la base de dades corresponents a cada operació CRUD.
Ets expert en proves CRUD? Té alguna informació interessant per compartir amb els nostres lectors que són nous a CRUD? No dubteu a expressar els vostres pensaments / suggeriments a la secció de comentaris de sota.
Lectura recomanada
- Proves de bases de dades amb JMeter
- Documentació de preguntes de mostra de certificació de proves ISTQB amb respostes
- Les millors eines de prova de programari 2021 (Eines d'automatització de proves de control de qualitat)
- Diferències clau entre la prova de caixa negra i la prova de caixa blanca
- Prova de descàrrega de llibres electrònics
- Un enfocament senzill per a la prova XML a la base de dades
- 40+ millors eines de proves de bases de dades: solucions populars de proves de dades
- Tutorial de proves GUI: una guia completa de proves de la interfície d'usuari (UI)