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.

Cadrul bazat pe 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

Cadrul 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
  1. Lansați aplicația
  2. Introduceți parola pentru numele de utilizator
  3. Faceți clic pe Ok
  4. Verificați rezultatele
Nume utilizator: parolă validă: validă Logare succes
2 Verificați Autentificare pentru acreditări nevalide
  1. Lansați aplicația
  2. Introduceți parola pentru numele de utilizator
  3. Faceți clic pe Ok
  4. Verificați rezultatele
Nume utilizator: parolă nevalidă: validă Conectare esuata
3 Verificați Autentificare pentru acreditări nevalide
  1. Lansați aplicația
  2. Introduceți parola pentru numele de utilizator
  3. Faceți clic pe Ok
  4. Verificați rezultatele
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

Cadrul de automatizare bazat pe date

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:

  1. Permite testarea aplicației cu mai multe seturi de valori de date în timpul testării de regresie
  2. Datele de testare și datele de verificare pot fi organizate într-un singur fișier și sunt separate de logica cazului de testare.
  3. 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.
  4. Acțiunile și funcțiile pot fi reutilizate în diferite teste.
  5. 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.
  6. 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.
  7. Permite dezvoltatorilor și testerilor să aibă o separare clară pentru logica cazurilor/scripturilor lor de testare de datele de testare.
  8. Aceleași cazuri de testare pot fi executate de mai multe ori, ceea ce ajută la reducerea cazurilor de testare și a scripturilor.
  9. 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:

  1. Calitatea testului depinde de abilitățile de automatizare ale echipei de implementare
  2. Validarea datelor este o sarcină care necesită timp atunci când se testează o cantitate mare de date.
  3. Întreținerea este o problemă mare, deoarece este nevoie de o cantitate mare de codare pentru testarea bazată pe date.
  4. Sunt necesare abilități tehnice de nivel înalt. Un tester poate fi nevoit să învețe un limbaj de scripting complet nou.
  5. Va fi mai multă documentație. În mare parte legate de infrastructura testelor de gestionare a scripturilor și de rezultatele testării.
  6. 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