test data management concept
În ultimul tutorial, ne-am concentrat asupra cum se pregătește patul de testare pentru a minimiza defectele mediului de testare . În continuare cu același tutorial, astăzi vom învăța cum să configurați și să întrețineți mediul de testare și importantGestionarea datelor de testaretehnici.
Procesul de configurare a mediului de testare
Cel mai important factor pentru mediul de testare este reproducerea acestuia cât mai aproape de mediul utilizatorului final. În mod obișnuit, utilizatorii finali nu sunt așteptați să efectueze nicio configurație sau instalare singuri, deoarece un produs complet sau un sistem este livrat către ei. Prin urmare, de această definiție, chiar și echipele de testare nu trebuie să efectueze în mod explicit astfel de configurații.
Dacă astfel de configurații sunt necesare în scopuri de testare pură (dar vor fi configurate pentru utilizatorii finali), atunci trebuie identificați administratorii. Acei administratori care configurează mediul de dezvoltare trebuie să fie aceiași oameni care configurează mediul de testare.
Dacă echipa de dezvoltare în sine ia inițiativa în instalare / configurare, atunci ei trebuie să ajute să facă același lucru chiar și în mediul de testare.
De exemplu, dacă trebuie să testați o aplicație (cu middleware-ul asociat pentru a fi instalat și configurat) pe un sistem pe diferite platforme de sistem de operare etc. - cel mai bun mod de a rezolva acest lucru este să utilizați virtualizare sau medii Cloud .
Aveți un sistem master în care toate aplicațiile și middleware-ul necesar sunt instalate și configurate corect. Apoi faceți din acest sistem o imagine de bază prin captarea acestuia și clonați mai multe instanțe din aceeași imagine, astfel încât fiecare utilizator să simtă că are un sistem dedicat cu aplicația testată.
Iată mai jos, este o descriere picturală a ceea ce ar presupune un proces de mediu de testare:
Procesul de configurare a mediului de testare
Ce veți învăța:
Întreținerea unui mediu de testare
Atât de multe spuse despre pregătirea mediului de testare, deși provocările, este, fără îndoială, mai mult decât un motiv pentru necesitatea întreținerii sau standardizarea mediului de testare. De multe ori, un tester pierde timpul de testare din cauza mediului sau a problemelor de configurare.
Cu o creștere rapidă a sistemelor de operare și a gamei de hardware și software, mediul trebuie să fie de natură aproape dinamică, pentru a face față nevoilor. Echipele de testare se pot asigura că livrează un produs de înaltă calitate cu un proces bun de gestionare a testelor și acest lucru ar ajuta la utilizarea optimă a resurselor care sunt disponibile în mod limitat.
Indicatori cheie pentru a asigura întreținerea eficientă a mediului de testare
Ca medii de testare, de cele mai multe ori conțin platforme și stive eterogene, prezentând mai jos câteva indicii cheie pentru a asigura întreținerea eficientă a mediului de testare.
# 1) Distribuirea și distribuirea eficientă a mediului:
După cum sa menționat mai devreme, una dintre provocările cheie ale pregătirii mediului de testare este că multe echipe sau oameni trebuie să utilizeze același set de resurse în scopul testării lor. Prin urmare, trebuie dezvoltat un mecanism adecvat de partajare care să răspundă nevoilor tuturor echipelor și oamenilor fără a întârzia programele.
Acest lucru poate fi realizat prin menținerea unui depozit sau a unui link de informații în care toate datele referitoare la:
- cine folosește mediul,
- atunci când mediul este liber de utilizat și
- modul în care se introduce cu exactitate distribuția timpului de utilizare a mediului.
Determinând în mod proactiv unde cerința resurselor este mare față de disponibilitatea limitată a acestora, o cantitate mare de haos este anulată automat.
Al doilea aspect al acestui lucru este de a revizui cerințele de resurse ale echipelor pentru fiecare ciclul de testare și căutați resursele care nu sunt utilizate foarte mult. Analizați dacă resursele respective pot fi înlocuite cu resurse sau sisteme noi care ar putea fi necesare.
# 2) Verificări de sănătate:
Unele cerințe de testare necesită o configurație completă de testare sau o configurare care implică pași elaborați care necesită foarte mult timp. Acesta este în mod special cazul în timpul testare cap la cap care implică două sau mai multe componente pentru a lucra împreună. Prin urmare, același mediu de testare poate fi necesar să fie refolosit de mai multe echipe.
În astfel de cazuri, având o bună înțelegere a întregului mediu în ansamblu, colectând ce fel de teste sunt efectuate de diferite echipe, va picta o imagine rezonabilă pentru a ajuta la furnizarea resurselor specifice echipelor respective.
Luând în considerare factorii de mai sus - pot fi efectuate teste de sănătate de bază care vor ajuta la accelerarea testelor pentru echipe individuale sau le vor alarma imediat dacă mediul trebuie să sufere unele modificări sau remedieri ca urmare a acestor verificări de sănătate.
# 3) Urmărirea eventualelor întreruperi:
La fel ca fiecare echipă care deține un mediu de testare, o organizație are toate mediile de testare posibile întreținute de o echipă de asistență globală.
În plus, la fel ca echipele care dețin mediul lor de testare au propriile perioade de nefuncționare locală în cazul unor actualizări de firmware / software, echipele globale trebuie să se asigure că toate mediile respectă cele mai noi standarde care pot implica fie întreruperi de energie, fie rețea.
Prin urmare, cei care mențin mediul de testare trebuie să urmărească orice astfel de întreruperi care pot apărea și să informeze în prealabil echipa de testare pentru a-și planifica activitatea în consecință.
# 4) Virtualizați ori de câte ori este posibil:
Acest lucru este din nou foarte relevant atunci când testarea trebuie făcută în partajarea mediului înconjurător și este extrem de necesară optimizarea resurselor. În astfel de timpuri, răspunsul este utilizarea unui mediu virtualizat, cum ar fi un nor, în scopuri de testare.
Când utilizați un astfel de mediu, tot ce trebuie să facă testerii este să ofere un moment și această instanță, odată asigurată, va forma un pat de testare independent sau mediu de testare care conține toate resursele diverse, cum ar fi un sistem de operare dedicat, bază de date, middleware, cadre de automatizare , etc. necesare pentru testare.
Odată ce testarea este încheiată, aceste instanțe pot fi distruse, reducând astfel semnificativ costurile pentru o organizație. Mediile cloud sunt deosebit de utile pentru testarea funcțională a verificării, testarea domeniilor de automatizare.
# 5) Testare / automatizare de regresie:
cel mai bun software gratuit pentru optimizarea computerului
Pe măsură ce sunt dezvoltate noi funcții și caracteristici, teste de regresie trebuie efectuate pentru aceste funcții pentru fiecare ciclu de lansare. Prin urmare, chiar dacă în partea posterioară, mediile de testare pentru testarea de regresie par să ruleze pe aceeași configurație de testare cu aceleași date, în realitate, ele evoluează constant la fiecare lansare, în funcție de caracteristicile implementate, de asemenea.
Fiecare ciclu de lansare a produsului ar avea una sau mai multe runde de testare de regresie. Astfel, stabilirea mediilor de testare de regresie pentru fiecare ciclu de lansare a produsului și reutilizarea acestora în cadrul ciclului, ar descrie cu siguranță stabilitatea mediului de testare.
Dezvoltarea cadrelor de automatizare și utilizarea automatizării pentru testele regresive ajută, de asemenea, la îmbunătățirea eficienței unui mediu de testare, deoarece automatizarea va presupune că mediul este stabil și defectele care sunt generate sunt pur caracteristice / orientate spre cod.
# 6) Guvernanță generală:
Când există unele probleme cu hardware-ul sau software-ul mediului de testare, aceste probleme trebuie să fie direcționate către persoanele potrivite pentru a asigura remedieri dacă nu pot fi rezolvate intern de către cei care întrețin laboratorul.
De exemplu, dacă orice testare generează un defect care cuprinde o limitare a firmware-ului sau a software-ului care este utilizat în mediul curent, acest lucru nu poate fi rezolvat în general numai de către cei responsabili de întreținerea mediului.
Prin urmare, consumatorului (care este testerul în acest caz) trebuie să i se solicite să ridice cereri de servicii adecvate. Acestea trebuie să fie direcționate către furnizorul sau echipa corespunzătoare și coordonarea trebuie realizată în mod regulat cu aceștia, pentru a se asigura că următoarea versiune sa rezolvat la problema specifică.
Un alt aspect al guvernanței ar fi furnizarea de rapoarte de mediu detaliate conducerii sau părților interesate din când în când, ceea ce ajută la emanarea transparenței și constituie un teren bun pentru orice analiză.
Pregătirea datelor de testare
Să aruncăm o privire la ultima porțiune a Crearea patului de testare - care presupune configurarea datelor de testare . Cu o bucată atât de mare despre mediul de testare, adevărata esență a mediului de testare, robustețea și eficiența acestuia pot fi măsurate cu datele de testare. Prin definiție, datele de testare reprezintă orice tip de intrare dată codului software testat.
Chiar dacă petrecem o cantitate bună de timp în proiectarea cazurilor de testare, motivul pentru care datele de testare sunt importante este faptul că asigură o acoperire completă a testării pentru toate tipurile de scenarii, îmbunătățind astfel calitatea. Ar putea exista unele date de testare care sunt necesare pentru orice testare a căilor fericite sau pozitive.
Alte date ar putea fi proiectate pentru testarea erorilor sau negative, ceea ce este foarte util pentru a descoperi cum funcționează aplicația atunci când este pusă în situații anormale.
Datele de testare sunt, în general, create înainte de începerea executării textului, deoarece fiecare mediu de testare are propriul set de complexități sau pregătirea datelor în sine poate fi un proces prelungit. Deci, în general, sursele de date de testare ar putea fi echipa de dezvoltare internă sau utilizatorii finali care consumă codul sau caracteristica.
De exemplu,Testarea funcției
Să luăm un exemplu în care trebuie să efectuați teste funcționale sau teste cu cutie neagră. Aici obiectivul este ca codul să îndeplinească funcțional cerințele specificate.
Deci, în astfel de cazuri - pregătirea cazurilor de testare ar trebui să aibă în general acoperire pentru următoarele tipuri de date:
- Date despre calea pozitivă: Având ca referință documentul de utilizare a cazului de dezvoltare, acestea sunt datele în general sincronizate cu realizarea scenariilor de cale pozitivă.
- Date despre calea negativă: Acestea sunt date care sunt în general considerate „invalide” în ceea ce privește funcționarea corectă funcțională a codului.
- Date nule: Nu furnizați date atunci când aplicația sau codul așteaptă aceste date.
- Date eronate: Determinarea performanței codului atunci când datele sunt furnizate într-un format ilegal.
- Date privind condițiile limită: Testați datele furnizate din index sau matrice pentru a determina modul în care funcționează codul.
Datele de testare joacă un rol cheie în identificarea locului în care un produs sau o caracteristică se poate rupe complet. Aveți întotdeauna o practică de sondare și validare a tipului de date furnizate mediului de testare în diferite faze ale testării.
Gestionarea datelor de testare
Atunci când datele de testare joacă un rol atât de important în asigurarea calității produsului, este rezonabil să spunem că gestionarea și eficientizarea acestora joacă, de asemenea, un rol la fel de important în asigurarea calității oricărui produs care trebuie să fie pus la dispoziția clienților.
Nevoia de gestionare a datelor de testare și cele mai bune practici:
# 1) Un număr mare de organizații au schimbarea rapidă a obiectivelor de afaceri pentru a satisface nevoile utilizatorului final și, prin urmare, este inutil să menționăm că datele de testare adecvate sunt esențiale în determinarea calității testării. Aceasta va implica setarea exactă a datelor pentru mediile de testare respective și monitorizarea tiparelor comportamentale.
După cum sa discutat deja, o mare parte din timpul unei echipe de testare este cheltuită în planificarea datelor de testare și a sarcinilor aferente. De multe ori testarea oricărei funcționalități tinde să fie în mare măsură îngreunată din cauza nedisponibilității datelor de testare adecvate, care reprezintă o provocare critică în ceea ce privește acoperirea completă a testelor.
#Două) De asemenea, uneori pentru anumite cerințe de testare datele de testare trebuie actualizate constant . Acest lucru în sine provoacă o mare întârziere a ciclului din cauza relucrării constante care crește, de asemenea, costul aplicației care ajunge pe piață.
În alte momente, în cazul în care produsul care este livrat implică diferite unități ale grupurilor de lucru dintr-o organizație mare, crearea și actualizarea datelor de testare necesită un nivel complex de coordonare între aceste grupuri de lucru.
# 3) Chiar dacă echipele de testare trebuie să creeze tot felul de date care sunt posibile pentru a asigura testarea adecvată, organizațiile trebuie, de asemenea, să ia în considerare faptul că acest lucru ar însemna că toate tipurile diferite de date trebuie stocate într-un fel de depozit.
Deși deținerea unui depozit este o bună practică, stocarea excesivă și date nedorite nu ar crește în mod semnificativ spațiul de stocare pentru a stoca aceste bucăți mari de date, ci și va face din ce în ce mai dificilă preluarea datelor adecvate pentru testarea în cauză dacă nu există o întreținere a versiunii și arhivarea acestui depozit.
Majoritatea organizațiilor se confruntă în general cu aceste provocări comune în ceea ce privește datele de testare. Astfel, trebuie să existe unele strategii de management care trebuie puse în aplicare pentru a minimiza gradul acestor provocări.
Iată mai jos câteva metodologii sugerate pentru gestionarea datelor de testare și menținerea acestora relevante pentru nevoile de testare. Următoarele practici sunt foarte de bază și generice, care vor funcționa în mod obișnuit pentru majoritatea organizațiilor. Modul în care este adoptat este pur și simplu la latitudinea organizațiilor respective.
Testarea strategiilor de gestionare a datelor
# 1) Analiza datelor
În general, datele de testare sunt construite pe baza cazurilor de testare care trebuie executate. De exemplu, într-o echipă de testare a sistemului, scenariu de test end to end trebuie identificat pe baza căruia sunt proiectate datele de testare. Acest lucru ar putea implica una sau mai multe aplicații pentru a funcționa.
Spuneți într-un produs care gestionează volumul de lucru - implică aplicația controlerului de gestionare, aplicațiile middleware, aplicațiile bazei de date, toate funcționând în corelație între ele. Datele de testare necesare pentru același lucru ar putea fi împrăștiate. O analiză amănunțită a tuturor tipurilor diferite de date care ar putea fi necesare trebuie făcută pentru a asigura o gestionare eficientă.
# 2) Configurarea datelor pentru a reflecta mediul de producție
Aceasta este, în general, o extensie față de pasul anterior și permite să înțelegem care va fi utilizatorul final sau scenariul de producție și ce date sunt necesare pentru același lucru. Utilizați aceste date și comparați aceste date cu datele existente în prezent în mediul de testare actual. Pe baza acestor date, este posibil să fie necesară crearea sau modificarea noilor date.
# 3) Determinarea curățării datelor de testare
Pe baza cerinței de testare din ciclul de eliberare curent (în cazul în care un ciclu de eliberare se poate întinde pe o perioadă lungă de timp), este posibil ca datele de testare să fie modificate sau create în conformitate cu punctul de mai sus. Aceste date de testare, deși nu sunt relevante imediat, pot fi solicitate ulterior. Prin urmare, ar trebui formulat un proces clar de a considera când datele de testare pot fi curățate.
# 4) Identificați datele sensibile și protejați-le
De multe ori, pentru a testa corect aplicațiile, este posibil să fie necesară o cantitate mare de date foarte sensibile. De exemplu, un mediu de testare bazat pe cloud este o alegere populară, deoarece face testarea la cerere a diferitelor produse.
Cu toate acestea, ceva la fel de simplu ca garantarea confidențialității utilizatorilor într-un cloud este un motiv de îngrijorare. Deci, mai ales în cazurile în care va trebui să reproducem mediul utilizatorului, trebuie identificat mecanismul de protecție a datelor sensibile. Mecanismul este guvernat în mare măsură de volumul datelor de testare utilizate.
# 5) Automatizare
Așa cum adoptăm automatizarea pentru a rula teste repetitive sau pentru a rula aceleași teste cu diferite tipuri de date, este de asemenea posibil să automatizăm crearea datelor de testare. Acest lucru ar ajuta la expunerea oricăror erori care pot apărea cu privire la date în timpul testării. O modalitate posibilă de a face acest lucru este comparând rezultatele obținute de un set de date din testele consecutive. Apoi, automatizați acest proces de comparare.
# 6) Actualizarea eficientă a datelor utilizând un depozit central
Aceasta este de departe cele mai importante metodologii și formează inima implementării gestionării datelor. Toate punctele menționate mai sus, în special cele referitoare la configurarea datelor, la curățarea datelor, sunt corelate direct sau indirect cu aceasta.
Eforturi mari în crearea datelor de testare pot fi salvate prin menținerea unui depozit central care conține tot felul de date care pot fi necesare pentru diferite tipuri de testare. Cum se face asta? În cicluri de testare consecutive, fie pentru un nou caz de testare, fie pentru un caz de test modificat, verificați dacă datele există în depozit. Dacă nu există, introduceți mai întâi aceste date în mediul de testare.
Apoi, acest lucru poate fi direcționat către acest depozit pentru referințe viitoare. Acum, pentru cicluri de lansare consecutive, echipa de testare poate utiliza toate sau un subset al acestor date. Nu este avantajul foarte evident? În funcție de seturile de date utilizate frecvent, datele învechite pot fi ușor eliminate și, prin urmare, se asigură că datele corecte sunt întotdeauna prezente, reducând astfel costul stocării acestor date inutile.
În al doilea rând, puteți avea, de asemenea, salvate câteva versiuni ale acestui depozit sau îl puteți revizui după cum este necesar. A avea diferite versiuni ale depozitului poate ajuta foarte mult în testarea de regresie pentru a identifica ce schimbări de date pot provoca ruperea codului.
Concluzie
Mediul de testare ar trebui să fie de primă importanță în fiecare echipă de testare. Fiecare ciclu de lansare va aduce o serie întreagă de noi provocări de combatut cu un mediu de testare nesigur și neplanificat.
Ca măsură revoluționară, multe organizații pun acum în aplicare strategii, cum ar fi formarea unor echipe dedicate de întreținere a mediului de testare, care stabilesc anumite cadre pentru întreținerea eficientă a mediilor de testare, pentru a asigura cicluri de eliberare mai fine.
Testarea îmbunătățită este doar un efect evident al eficientizării gestionării datelor de testare. O esență esențială a acestuia este aceea că asigură o soluție rentabilă pentru organizații, fără a compromite fiabilitatea produsului.
Spuneți-ne cum vă gestionați mediul de testare și cum pregătiți datele de testare? Doriți să adăugați sfaturi?
Lectură recomandată
- Topul celor mai bune 14 instrumente de gestionare a datelor de testare în 2021
- Cele mai bune 10 instrumente de analiză a datelor pentru o gestionare perfectă a datelor (LISTA 2021)
- Tutorial de gestionare a testelor: un ghid final pentru gestionarea testelor
- Ce sunt datele de testare? Testarea tehnicilor de pregătire a datelor cu exemplu
- Funcție Pool de date în IBM Rational Quality Manager pentru testarea gestionării datelor
- Crearea cadrului Selenium și accesarea datelor de testare din Excel - Tutorial Selenium # 21
- Testarea generării de date cu instrumentul online GEDIS Studio (partea 2)