black box testing an depth tutorial with examples
În acest tutorial, folosind experiența mea industrială în testarea software-ului, să ne familiarizăm cu tipurile și tehnicile testării cu cutie neagră, împreună cu procesul, avantajele, dezavantajele și unele instrumente de automatizare pentru al testa, altele decât testarea manuală.
De asemenea, vom afla despre diferențele dintre testarea cutiei albe și testarea cutiei negre.
Lista tutorialelor „Tehnici de testare a cutiei negre”:
Tutorial nr. 1: Ce este testarea cutiei negre
Tutorial nr. 2: Ce este testarea cutiei albe
Tutorial # 3: Testare funcțională simplificată
Tutorial # 4: Ce este testarea cazului de utilizare
Tutorial # 5 : Tehnica de testare a matricei ortogonale
Tehnici
Tutorial nr. 6: Analiza valorii limită și partiționarea echivalenței
Tutorial nr. 7: Testarea tabelului decizional
Tutorial # 8: Testarea tranziției de stat
Tutorial # 9 : Eroare de ghicit
Tutorial # 10: Metode de testare bazate pe grafice
Aproape toți efectuăm testarea cutiei negre în fiecare zi!
Indiferent dacă am învățat sau nu, cu toții am efectuat și am efectuat testarea cutiei negre de multe ori în viața noastră de zi cu zi !!
Din numele în sine, puteți înțelege probabil că implică interacțiunea cu sistemul, că testați ca o cutie misterioasă. Înseamnă că nu sunteți suficient de informat cu privire la funcționarea internă a sistemului, dar știți cum ar trebui să se comporte.
Dacă luăm un exemplu pentru a ne testa mașina sau bicicleta, o conducem întotdeauna pentru a ne asigura că nu se comportă într-un mod neobișnuit. Vedea? Am făcut deja testarea cutiei negre.
Ce veți învăța:
- Ce este testarea cutiei negre?
- Tipuri de testare cutie neagră
- Instrumente de testare a cutiei negre
- Tehnici de testare a cutiei negre
- Cum se face pas cu pas?
- Avantaje și dezavantaje
- Diferența dintre testarea cutiei albe și testarea cutiei negre
- Concluzie
- Lectură recomandată
Ce este testarea cutiei negre?
Testarea cutiei negre este, de asemenea, cunoscută sub numele de comportament, opac-cutie, cutie închisă, bazată pe specificații sau testare ochi-la-ochi.
Este o metodă de testare software care analizează funcționalitatea unui software / aplicație fără să știe prea multe despre structura internă / designul elementului care este testat și compară valoarea de intrare cu valoarea de ieșire.
deschideți un fișier XML în Excel
Accentul principal în testarea Black Box se pune pe funcționalitatea sistemului în ansamblu. Termenul „Testare comportamentală” este, de asemenea, utilizat pentru testarea cutiei negre. Proiectarea testului comportamental este ușor diferită de proiectarea testului cutiei negre, deoarece utilizarea cunoștințelor interne nu este strict interzisă, dar este totuși descurajată.
Fiecare metodă de testare are propriile sale avantaje și dezavantaje. Există unele erori care nu pot fi găsite folosind singura tehnică cutie neagră sau numai cutie albă.
Majoritatea aplicațiilor sunt testate prin metoda Black Box. Trebuie să acoperim majoritatea cazurilor de testare, astfel încât majoritatea erorilor să fie descoperite de un Cutie neagră metodă.
Această testare are loc pe parcursul dezvoltării software-ului și a testării ciclului de viață, adică în etapele de testare a unității, integrării, sistemului, acceptării și regresiei.
Aceasta poate fi atât funcțională, cât și nefuncțională.
Tipuri de testare cutie neagră
Practic, există mai multe tipuri de testare a cutiei negre care sunt posibile, dar dacă luăm în considerare varianta majoră a acesteia, atunci menționate mai jos sunt cele două fundamentale.
# 1) Testarea funcțională
Acest tip tratează cerințele funcționale sau specificațiile unei aplicații. Aici, diferite acțiuni sau funcții ale sistemului sunt testate prin furnizarea intrării și compararea ieșirii reale cu ieșirea așteptată.
De exemplu ,când testăm o listă derulantă, facem clic pe ea și verificăm dacă se extinde și că toate valorile așteptate sunt afișate în listă.
Puține tipuri majore de testare funcțională sunt:
- Testarea fumului
- Testarea sănătății
- Testarea integrării
- Testarea sistemului
- Testarea regresiei
- Testarea acceptării utilizatorului
=> Citiți mai multe despre Testarea funcțională .
# 2) Testare nefuncțională
În afară de funcționalitățile cerințelor, există și câteva aspecte nefuncționale care trebuie testate pentru a îmbunătăți calitatea și performanța aplicației.
Puține tipuri majore de testare nefuncțională includ:
- Testarea utilizabilității
- Testarea sarcinii
- Test de performanta
- Testarea compatibilității
- Testare stresanta
- Testarea scalabilității
=> Citiți mai multe despre Testare nefuncțională .
Instrumente de testare a cutiei negre
Instrumentele de testare a cutiei negre sunt în principal instrumente de înregistrare și redare. Aceste instrumente sunt utilizate pentru testarea de regresie pentru a verifica dacă noua versiune a creat vreo eroare în funcționalitatea aplicației de lucru anterioare.
Aceste instrumente de înregistrare și redare înregistrează cazuri de testare sub forma unor scripturi precum TSL, script VB, Javascript, Perl etc.
Tehnici de testare a cutiei negre
Pentru a testa în mod sistematic un set de funcții, este necesar să proiectăm cazuri de testare. Testatorii pot crea cazuri de testare din documentul cu specificațiile cerințelor folosind următoarele tehnici de testare a cutiei negre.
- Partiționarea echivalenței
- Analiza valorii limită
- Testarea tabelului decizional
- Testarea tranziției de stat
- Eroare de ghicit
- Metode de testare bazate pe grafice
- Testarea comparativă
Să înțelegem fiecare tehnică în detaliu.
# 1) Partiționarea echivalenței
Această tehnică este cunoscută și sub denumirea de partiționare de clasă de echivalență (ECP). În această tehnică, valorile de intrare în sistem sau aplicație sunt împărțite în diferite clase sau grupuri pe baza asemănării sale în rezultat.
Prin urmare, în loc să folosim fiecare valoare de intrare, putem folosi acum orice valoare din grup / clasă pentru a testa rezultatul. În acest fel, putem menține acoperirea testului, în timp ce putem reduce o mulțime de prelucrări și, cel mai important, timpul petrecut.
De exemplu:
cum se deschide fișierul eps în Windows
Așa cum este prezent în imaginea de mai sus, un câmp text „AGE” acceptă doar numerele de la 18 la 60. Vor exista trei seturi de clase sau grupuri.
Două clase nevalide vor fi:
a) Mai mic sau egal cu 17.
b) Mai mare sau egal cu 61.
O clasă valabilă va fi între 18 și 60 de ani.
Am redus astfel cazurile de testare la doar 3 cazuri de testare pe baza claselor formate, acoperind astfel toate posibilitățile. Deci, testarea cu oricine valoare din fiecare set al clasei este suficientă pentru a testa scenariul de mai sus.
=> Citire recomandată - Ce este partiționarea echivalenței?
# 2) Analiza valorii limită
Din numele în sine, putem înțelege că în această tehnică ne concentrăm asupra valorilor la limite, deoarece se constată că multe aplicații au o cantitate mare de probleme la limite.
Limită înseamnă valorile din apropierea limitei în care se schimbă comportamentul sistemului. În analiza valorii limită, atât intrările valide, cât și intrările nevalide sunt testate pentru a verifica problemele.
De exemplu:
Dacă dorim să testăm un câmp în care trebuie acceptate valori de la 1 la 100, atunci alegem valorile limită: 1-1, 1, 1 + 1, 100-1, 100 și 100 + 1. În loc să folosim toate valorile de la 1 la 100, folosim doar 0, 1, 2, 99, 100 și 101.
# 3) Testarea tabelului decizional
După cum sugerează și numele, oriunde există relații logice precum:
Dacă
{
(Condiție = Adevărat)
apoi action1;
}
altfel action2; / * (condiție = Fals) * /
Apoi, un tester va identifica două ieșiri (acțiunea1 și acțiunea2) pentru două condiții (Adevărat și Fals). Deci, pe baza scenariilor probabile, este sculptat un tabel de decizie pentru a pregăti un set de cazuri de testare.
De exemplu:
Luați un exemplu de bancă XYZ care oferă o rată a dobânzii pentru bărbații în vârstă de 10% și pentru restul persoanelor cu 9%.
În acest exemplu de condiție, C1 are două valori ca adevărat și fals, condiția C2 are, de asemenea, două valori ca adevărat și fals. Numărul total de combinații posibile ar fi apoi patru. Astfel putem deriva cazuri de testare folosind un tabel de decizie.
implementați coada prioritară c ++
# 4) Testarea tranziției de stat
Testarea tranziției de stat este o tehnică utilizată pentru a testa diferitele stări ale sistemului supus testării. Starea sistemului se schimbă în funcție de condiții sau evenimente. Evenimentele declanșează stări care devin scenarii și un tester trebuie să le testeze.
O diagramă de tranziție de stare sistematică oferă o vedere clară a modificărilor de stare, dar este eficientă pentru aplicații mai simple. Proiecte mai complexe pot duce la diagrame de tranziție mai complexe, făcându-le astfel mai puțin eficiente.
De exemplu:
# 5) Eroare de ghicit
Acesta este un exemplu clasic de testare bazată pe experiență.
În această tehnică, testerul își poate folosi experiența despre comportamentul și funcționalitățile aplicației pentru a ghici zonele predispuse la erori. Multe defecte pot fi găsite folosind ghicirea erorilor în care majoritatea dezvoltatorilor greșesc de obicei.
Câteva greșeli frecvente pe care dezvoltatorii uită să le gestioneze de obicei:
- Împarte la zero.
- Gestionarea valorilor nule în câmpurile de text.
- Acceptarea butonului Trimitere fără nicio valoare.
- Încărcare fișier fără atașament.
- Încărcați fișierul cu o dimensiune mai mică sau mai mare decât limita.
# 6) Metode de testare bazate pe grafice
Fiecare aplicație este o acumulare a unor obiecte. Toate aceste obiecte sunt identificate și graficul este pregătit. Din acest grafic de obiecte, fiecare relație de obiect este identificată și cazurile de testare sunt scrise în consecință pentru a descoperi erorile.
# 7) Testarea comparativă
Diferite versiuni independente ale aceluiași software sunt utilizate pentru a se compara între ele pentru testarea în această metodă.
Cum se face pas cu pas?
În general, atunci când se urmărește un proces sistematic pentru a testa un proiect / aplicație, atunci calitatea este menținută și este utilă pe termen lung pentru runde suplimentare de testare.
- Cel mai important pas este să înțelegem specificațiile cerințelor unei aplicații. Ar trebui să existe un SRS documentat corespunzător (Specificația cerințelor software).
- Folosind tehnicile de testare a cutiei negre menționate mai sus, cum ar fi analiza valorii limită, partiționarea echivalenței etc.
- Cazurile de testare proiectate sunt executate pentru a verifica dacă trec sau nu, verificând rezultatele reale cu rezultatele așteptate.
- Cazurile de testare nereușite sunt ridicate ca defecte / erori și adresate echipei de dezvoltare pentru a le remedia.
- Pe baza faptului că defectele sunt remediate, testerul testează din nou defectele pentru a verifica dacă este recurent sau nu.
Avantaje și dezavantaje
Avantaje
- Testatorul nu trebuie să aibă o experiență tehnică. Este important să testați fiind în locul utilizatorului și să gândiți din punctul de vedere al utilizatorului.
- Testarea poate fi începută odată ce dezvoltarea proiectului / aplicației este realizată. Atât testerii, cât și dezvoltatorii lucrează independent, fără a interveni în spațiul celuilalt.
- Este mai eficient pentru aplicații mari și complexe.
- Defectele și inconsecvențele pot fi identificate în stadiul incipient al testării.
Dezavantaje
- Fără cunoștințe tehnice sau de programare, există șanse de a ignora condițiile posibile ale scenariului de testat.
- Într-un timp stipulat, există posibilități de testare mai mică și sări peste toate intrările posibile și testarea ieșirii lor.
- O acoperire completă a testului nu este posibilă pentru proiectele mari și complexe.
Diferența dintre testarea cutiei albe și testarea cutiei negre
Date mai jos sunt câteva diferențe între ambele:
Testarea cutiei negre | Testarea cutiei albe |
---|---|
Este o metodă de testare fără a avea cunoștințe despre codul real sau structura internă a aplicației | Este o metodă de testare care are cunoștințe despre codul real și structura internă a aplicației |
Acesta este un test de nivel superior, cum ar fi testarea funcțională. | Acest tip de testare se efectuează la un nivel mai scăzut de testare, cum ar fi testarea unitară, testarea integrării |
Se concentrează pe funcționalitatea sistemului testat | Se concentrează pe codul real - programul și sintaxa acestuia |
Testarea cutiei negre necesită specificațiile cerințelor pentru testare | Testarea cutiei albe necesită documente de proiectare cu diagrame de flux de date, diagrame etc. |
Testarea cutiei negre se face de către testeri | Testarea cutiei albe se face de către dezvoltatori sau testeri cu cunoștințe de programare. |
Concluzie
Acestea sunt câteva dintre punctele de bază privind testarea cutiei negre și prezentarea generală a tehnicilor și metodelor sale.
Deoarece nu este posibil să testați totul cu implicarea umană cu o precizie de 100%, dacă tehnicile și metodele menționate mai sus sunt utilizate în mod eficient, va îmbunătăți cu siguranță calitatea sistemului.
În concluzie, aceasta este o metodă foarte utilă pentru a verifica funcționalitatea sistemului și a identifica majoritatea defectelor.
Sper că ați fi dobândit o cunoaștere aprofundată a tehnicii de testare a cutiei negre.
Lectură recomandată
- Diferențele cheie dintre testarea cutiei negre și testarea cutiei albe
- Cele mai bune instrumente de testare software 2021 (Instrumente de automatizare a testelor de calitate)
- Testarea funcțională Vs testarea non-funcțională
- Testare pereche sau Tutorial de testare completă cu instrumente și exemple
- Testarea cutiei albe: un ghid complet cu tehnici, exemple și instrumente
- Tutorial de testare a volumului: exemple și instrumente de testare a volumului
- Tutorial de testare a configurației cu exemple
- Descărcare eBook Descărcare Primer