what is test harness
Nu sunt un mare fan al etichetelor. Iată ce vreau să spun prin asta.
Dacă trebuie să verific câteva aspecte înainte de a determina dacă QA poate fi pornit sau nu, voi face pur și simplu o listă și voi efectua acțiunea. În opinia mea, nu contează dacă o numesc oficial o operațiune de „examinare a disponibilității testului” sau nu - atâta timp cât fac ceea ce ar trebui să fac, cred că nu este nevoie să-i numesc un anumit nume sau etichetă .
Dar stau corectat. Recent, în clasa mea, am predat modelul Agile-scrum pentru dezvoltarea de software. Acolo a fost un intrebare ‘ cum se efectuează testarea într-o metodă Agile? „Explicau două metode - una este cea în care încercăm să o includem în fiecare sprint, iar cealaltă este cea mai bună practică pe care am învățat-o din implementarea directă - care este să rămân un sprint QA în raport cu cel de dezvoltare.
Unul dintre studenții mei m-a întrebat dacă există un nume pentru al doilea și nu am făcut-o pentru că nu am pus niciodată accent pe nume.
Dar în acel moment, am simțit cât de important era să etichetez un proces în mod corespunzător pentru a mă asigura că avem un termen pentru a ne referi la procesul despre care vorbim.
Prin urmare, astăzi vom face exact asta: Aflați procesul din spatele termenului „Test Harness”.
După cum am menționat anterior în unele dintre articolele mele anterioare: multe pot fi înțelese din sensul literal al numelui. Deci, verificați-vă dicționarul pentru ce înseamnă „Ham” și marea dezvăluire a faptului că se aplică sau nu, în acest caz, este ceva ce vom vedea la final.
Există două contexte în care se folosește hamul de testare:
- Testarea automatizării
- Testarea integrării
Să începem cu primul:
Ce veți învăța:
- Context # 1: Testarea cablajului în automatizarea testelor
- Context # 2: Testarea cablajului în testarea integrării
- În concluzie:
- Lectură recomandată
Contextul nr. 1: Testarea cablajului în automatizarea testelor
În testarea automatizării lume, Hamul de testare se referă la cadrul și sistemele software care conțin scripturile de testare, parametrii necesari (cu alte cuvinte, date) pentru a rula aceste scripturi, a aduna rezultatele testelor, a le compara (dacă este necesar) și a monitoriza rezultatele.
Voi încerca să fac acest lucru mai simplu cu ajutorul unui exemplu.
Exemplu:
Dacă aș vorbi despre un proiect care folosește HP Quick Test Professional (acum UFT) pentru testarea funcțională, HP ALM este legat de organizarea și gestionarea tuturor scripturilor, rulărilor și rezultatelor, iar datele sunt preluate dintr-un MS Access DB - Următorul ar fi cablajul de testare pentru acest proiect:
câte tipuri de fișiere există? piton
- Software-ul QTP (UFT) în sine
- Scripturile și locația fizică în care sunt stocate
- Seturile de testare
- MS Access DB pentru a furniza parametrii, datele sau diferitele condiții care urmează să fie furnizate scripturilor de testare
- HP ALM
- Rezultatele testului și atributele de monitorizare comparative
După cum puteți vedea, sistemele software (automatizare, gestionarea testelor etc.), datele, condițiile, rezultatele - toate devin o parte integrantă a hamului de testare - singura excludere fiind însăși AUT.
Contextul nr. 2: Testarea cablajului în testarea integrării
Acum este timpul să explorăm ce înseamnă hamul de testare în contextul „Testarea integrării” .
Testarea integrării este de a pune împreună două sau module (sau unități) de cod care interacționează între ele și pentru a verifica dacă comportamentul combinat este sau nu așa cum era de așteptat.
În mod ideal, testarea integrării a două module ar trebui și ar fi posibilă să se efectueze atunci când ambele sunt gata 100%, testate pe unitate și sunt bune.
Cu toate acestea, nu trăim într-o lume perfectă - ceea ce înseamnă că unul sau mai multe module / unități de cod care urmează să fie elementele constitutive ale testului de integrare ar putea să nu fie disponibile. Pentru a rezolva această situație avem butoane și șoferi.
Stud este de obicei o bucată de cod care are o funcție limitată și care înlocuiește sau înlocuiește modulul de cod propriu-zis care trebuie să-i ia locul.
Exemplu: Pentru a explica mai departe acest lucru, permiteți-mi să folosesc un scenariu
Dacă există o unitate A și unitatea B care urmează să fie integrate. De asemenea, că Unitatea A trimite date către Unitatea B sau cu alte cuvinte, Unitatea A apelează Unitatea B.
Unitatea A dacă 100% este disponibilă și unitatea B nu este, atunci dezvoltatorul poate scrie o bucată de cod care are o capacitate limitată (ceea ce înseamnă aceasta este Unitatea B dacă are 10 caracteristici, doar 2 sau 3 care sunt importante pentru integrare cu A) va fi dezvoltat și este utilizat pentru integrare. Aceasta se numește a CIOT.
Integrarea ar fi acum: Unitatea A-> Stub (înlocuind B)
Pe de altă parte, dacă Unitatea A este 0% disponibilă și Unitatea B este 100% disponibilă, simularea sau proxy-ul trebuie să fie Unitatea A aici. Prin urmare, atunci când o funcție de apelare este înlocuită cu un cod auxiliar, atunci se numește CONDUCĂTOR AUTO .
Integrarea, în acest caz, ar fi : DRIVER (în locul lui A) -> Unitatea B
Întregul cadru: Procesul de planificare, creare și utilizare a butoanelor și / sau a driverelor pentru efectuarea testelor de integrare se numește Test Harness.
Notă : exemplul de mai sus este limitat și scenariul în timp real ar putea să nu fie atât de simplu sau de simplu ca acesta. Aplicațiile în timp real au puncte de integrare complexe și compozite.
În concluzie:
Ca întotdeauna, STH consideră că chiar și cele mai tehnice definiții pot fi derivate din sensul simplu, literal al termenului.
Dicționarul de pe smartphone-ul meu îmi spune că un „ham” este (uitați-vă sub contextul verbului):
„A aduce în condiții de utilizare eficientă; obține controlul asupra unui anumit scop; „
Urmând acest lucru și adaptându-l la testare:
„Un ham de testare este pur și simplu să creăm cadrul corect și să-l folosim (și toate elementele sale constitutive) pentru a controla întreaga activitate pentru a profita la maximum de situație - indiferent dacă este automatizarea sau integrarea. „
Acolo ne odihnim cazul.
Încă câteva lucruri înainte de a termina:
Î. Care sunt beneficiile unui ham de testare?
Acum, v-ați întreba care este importanța respirației pentru viața umană - este intrinsecă, nu-i așa? În mod similar, un cadru pentru a testa eficient este ca un dat. Avantajul, dacă trebuie să-l scriem în atât de multe cuvinte - aș spune, fiecare proces de testare are un ham de testare, indiferent dacă spunem în mod conștient că este „Hamul de testare” sau nu. Este ca și cum ai călători cunoașterea traseului, destinația și toate celelalte dinamici ale călătoriei.
Î. Care este diferența dintre hamul de testare și cadrul de testare ?
Personal, cred că compararea și contrastul nu sunt adesea abordarea corectă atunci când înțeleg conceptele conexe, deoarece liniile sunt adesea neclare. Ca răspuns la această întrebare, aș spune, hamul de testare este specific, iar cadrul de testare este generic. De exemplu, un ham de testare va include informațiile exacte ale instrumentului de gestionare a testelor până la ID-urile de autentificare care vor fi utilizate. Un cadru de testare, pe de altă parte, va spune pur și simplu că un instrument de gestionare a testelor va face activitățile respective.
Î. Există instrumente de testare ?
Hamul de testare include instrumente - cum ar fi software-ul de automatizare, software-ul de gestionare a testelor etc. Cu toate acestea, nu există instrumente specifice pentru implementarea unui ham de testare. Toate instrumentele sau orice instrumente pot face parte din cablajul de testare: QTP, JUnit, HP ALM - toate pot fi instrumente constitutive ale oricărui cablaj de testare.
Despre autor: Acest articol este scris de Swati S., membru al echipei STH.
Și, întotdeauna cu definiții, există întotdeauna diferențe în opinii. Vă salutăm opiniile și ne place să auzim ce credeți. Vă rugăm să nu ezitați să lăsați un comentariu, întrebări sau sugestii mai jos.
Lectură recomandată
- Testarea încărcării cu tutoriale HP LoadRunner
- Sfaturi pentru testarea software-ului pentru testatorii începători
- Cele mai bune instrumente de testare software 2021 (Instrumente de automatizare a testelor de calitate)
- Diferențele dintre testarea unitară, testarea integrării și testarea funcțională
- Testatorii își pierd controlul asupra testării din cauza automatizării?
- Compania globală de testare a software-ului va ajunge în curând la 28,8 miliarde de dolari
- Cum să păstrați motivația în viață în testerele de software?
- Descărcare eBook Descărcare Primer