Ce este testarea bazată pe date? Învață să creezi un cadru
Testare bazată pe date
Testare bazată pe date este o metodă de testare software în care datele de testare sunt stocate în format tabel sau foaie de calcul. Testarea bazată pe date permite testerilor să introducă un singur script de testare care poate executa teste pentru toate datele de testare dintr-un tabel și se așteaptă la rezultatul testului în același tabel. Se mai numește și testare bazată pe tabel sau testare parametrizată.
Cadrul bazat pe date
Cadrul bazat pe date este un cadru de testare de automatizare în care valorile de intrare sunt citite din fișierele de date și stocate în variabile în scripturile de testare. Acesta le permite testerilor să integreze atât cazuri de testare pozitive, cât și negative într-un singur test. Datele de intrare în cadrul bazat pe date pot fi stocate în surse de date unice sau multiple, cum ar fi .xls, .xml, .csv și baze de date.
De ce testarea bazată pe date?
Testare bazată pe date este important deoarece testerii au frecvent mai multe seturi de date pentru un singur test și crearea de teste individuale pentru fiecare set de date poate fi consumatoare de timp. Testarea bazată pe date ajută la păstrarea datelor separate de scripturile de testare, iar aceleași scripturi de testare pot fi executate pentru diferite combinații de date de testare de intrare, iar rezultatele testelor pot fi generate eficient.
Exemplu:
De exemplu, dorim să testăm sistemul de conectare cu mai multe câmpuri de intrare cu 1000 de seturi de date diferite.
Pentru a testa acest lucru, puteți lua următoarele abordări diferite:
Abordarea 1) Creați 1000 de scripturi unul pentru fiecare set de date și rulați fiecare test separat, unul câte unul.
Abordarea 2) Schimbați manual valoarea din scriptul de testare și rulați-l de mai multe ori.
Abordarea 3) Importați datele din foaia excel. Preluați datele de testare din rândurile Excel unul câte unul și executați scriptul.
În cele trei scenarii date, primele două sunt laborioase și consumatoare de timp. Prin urmare, este ideal să urmați a treia abordare.
Astfel, a treia abordare nu este altceva decât un cadru bazat pe date.
Cum se creează un cadru de automatizare bazat pe date
Considerați că doriți să testați funcționalitatea de conectare a unei aplicații.
Pas 1) Identificați cazurile de testare
- Introduceți numele de utilizator și parola corecte – Conectare reușită
- Introduceți un nume de utilizator incorect și o parolă corectă – Eroare de conectare
- Introduceți numele de utilizator corect și parola incorectă - Eroare de conectare
Pas 2) Creați pași de testare detaliați pentru cele trei cazuri de testare de mai sus
Caz de testare # | Description | Pașii de testare | Date de testare | rezultate asteptate |
---|---|---|---|---|
1 | Verificați Autentificare pentru acreditări valide |
|
Nume utilizator: parolă validă: validă | Logare succes |
2 | Verificați Autentificare pentru acreditări nevalide |
|
Nume utilizator: parolă nevalidă: validă | Conectare esuata |
3 | Verificați Autentificare pentru acreditări nevalide |
|
Nume utilizator: parolă validă: invalid | Conectare esuata |
Pas 3) Creați un script de testare
Dacă respectați pașii de testare, rămân comune prin cei 3 pași de testare. Trebuie să creați un Script de testare pentru a executa acești pași
// This is Pseudo Code // Test Step 1: Launch Application driver.get("URL of the Application"); // Test Step 2: Enter Username txtbox_username.sendKeys("valid"); // Test Step 3: Enter Password txtbox_password.sendKeys("invalid"); // Test Step 4: Check Results If (Next Screen) print success else Fail
Pas 4) Creați un excel/csv cu datele de testare de intrare
Pas 5) Pas Modificați scriptul pentru a bucla peste datele de testare de intrare. Comenzile de intrare ar trebui, de asemenea, parametrizate
// This is Pseudo Code // Loop 3 Times for (i = 0; i & lt; = 3; i++) { // Read data from Excel and store into variables int input_1 = ReadExcel(i, 0); int input_2 = ReadExcel(i, 1); // Test Step 1: Launch Application driver.get("URL of the Application"); // Test Step 2: Enter Username txtbox_username.sendKeys(input_1); // Test Step 3: Enter Password txtbox_password.sendKeys(input_2); // Test Step 4: Check Results If(Next Screen) print success else Fail }
Mai sus sunt doar 3 cazuri de testare. Scriptul de testare poate fi folosit pentru a trece peste următoarele cazuri de testare doar prin adăugarea valorilor datelor de testare la Excel
- Introduceți un nume de utilizator incorect și o parolă incorectă - Conectare eșuată
- Introduceți numele de utilizator și parola corecte necompletate - Conectare eșuată
- Introduceți un nume de utilizator și o parolă necompletate – Login Fail
Si asa mai departe
Cele mai bune practici de testare bazată pe date
Mai jos sunt prezentate cele mai bune practici de testare pentru testarea bazată pe date:
- Este ideal să folosiți informații realiste în timpul procesului de testare bazată pe date
- Navigarea în fluxul de testare ar trebui să fie codificată în scriptul de testare
- Conduceți API-uri virtuale cu date semnificative
- Utilizați datele pentru a genera afirmații dinamice
- Testați rezultate pozitive și negative
- Reutilizați testele funcționale bazate pe date pentru securitate și performanță
Avantajele testării bazate pe date
Data-Driven oferă multe avantaje, unele dintre ele sunt:
- Permite testarea aplicației cu mai multe seturi de valori de date în timpul testării de regresie
- Datele de testare și datele de verificare pot fi organizate într-un singur fișier și sunt separate de logica cazului de testare.
- Pe baza instrumentului, este posibil să aveți scripturile de testare într-un singur depozit. Acest lucru face ca textele să fie ușor de înțeles, întreținut și gestionat.
- Acțiunile și funcțiile pot fi reutilizate în diferite teste.
- Unele instrumente generează automat date de testare. Acest lucru este util atunci când sunt necesare volume mari de date aleatorii de testare, ceea ce ajută la economisirea timpului.
- Testarea bazată pe date poate efectua orice fază a dezvoltării. Un test bazat pe date este, în general, îmbinat într-un singur proces. Cu toate acestea, poate fi utilizat în mai multe cazuri de testare.
- Permite dezvoltatorilor și testerilor să aibă o separare clară pentru logica cazurilor/scripturilor lor de testare de datele de testare.
- Aceleași cazuri de testare pot fi executate de mai multe ori, ceea ce ajută la reducerea cazurilor de testare și a scripturilor.
- Orice modificare a scriptului de testare nu afectează datele de testare
Dezavantajele testării bazate pe date
Unele dezavantaje ale metodei de testare a automatizării bazate pe date sunt:
- Calitatea testului depinde de abilitățile de automatizare ale echipei de implementare
- Validarea datelor este o sarcină care necesită timp atunci când se testează o cantitate mare de date.
- Întreținerea este o problemă mare, deoarece este nevoie de o cantitate mare de codare pentru testarea bazată pe date.
- Sunt necesare abilități tehnice de nivel înalt. Un tester poate fi nevoit să învețe un limbaj de scripting complet nou.
- Va fi mai multă documentație. În mare parte legate de infrastructura testelor de gestionare a scripturilor și de rezultatele testării.
- Un editor de text precum Notepad este necesar pentru a crea și menține fișiere de date.
Concluzie
- Bazat pe date este un cadru de automatizare a testelor care stochează datele de testare într-un format de tabel sau foaie de calcul.
- În cadrul de automatizare a testelor bazate pe date, datele de intrare pot fi stocate într-o singură sau mai multe surse de date, cum ar fi xls, XML, csv și baze de date.
- Crearea unui test individual pentru fiecare set de date este un proces lung și care necesită timp. Cadrul de testare bazată pe date rezolvă această problemă, păstrând datele separate de testele funcționale.
- În Testarea bazată pe date, este o opțiune ideală pentru a utiliza informații realiste
- Permite testarea aplicației cu mai multe seturi de valori de date în timpul Testare de regresie
- Dezavantajul acestei metode este că depinde de abilitățile de automatizare ale echipei de implementare