how perform software product testing detailed process
Produsele software au nevoie de propria abordare unică pentru a testa în mod adecvat și corect. De multe ori, echipele le tratează ca pe orice alt software (adică aplicații interne create pentru un anumit client sau echipă; nu sunt accesibile publicului larg; care nu generează venituri) și acesta este punctul de plecare al problemelor.
Testarea produselor software necesită un stil și o strategie de testare personalizate pentru a adăuga valoare. Dezvoltarea și susținerea produselor software este în sine un ecosistem complex și pentru a prospera testerii trebuie să se adapteze.
Permiteți-mi să iau un moment pentru a explica de ce este importantă și de ce cred că dezvoltarea produselor este complexă, complicată și compozită, chiar și în cele mai bune momente.
Ce veți învăța:
- Provocări legate de dezvoltarea produselor software:
- Etapa # 1) Introducere produs
- Etapa # 2) Creșterea produsului
- Etapa # 3) Maturitatea produsului
- Etapa # 4) Declinul produsului / Revenirea la creșterea produsului
- Ce vă face un tester de produs de succes?
- Lectură recomandată
Provocări legate de dezvoltarea produselor software:
Iată câteva dintre provocările cu care se confruntă echipele de dezvoltare de produse software:
# 1)Lipsa controlului asupra datelor demografice ale utilizatorilor, dispozitivelor, mediilor, platformelor etc. : Produsele software, spre deosebire de software-ul construit pentru anumite părți interesate, nu sunt utilizate în situații controlate și previzibile. Există prea mulți factori care trebuie luați în considerare.
#Două)Viziunea produsului cețos : Comportamentul și caracteristicile produsului se schimbă pentru totdeauna, iar călătoria către maturitate nu este clar vizibilă. Sau produsul este în creștere prea rapid încât să scape de sub control, astfel încât echipele să nu știe ce se întâmplă.
# 3)Cronici agresive : Datorită concurenței puternice pe piața produselor software, lucrurile trebuie să se deplaseze cu o viteză vertiginoasă și echipele trebuie să rămână cu un pas înaintea colegilor lor. În caz contrar, vor pierde cu siguranță în fața competiției.
# 4)Frica de esec : Produsele software sunt de obicei inovatoare. Deci, succesul lor nu este întotdeauna dat. Acesta este motivul pentru care companiile nu pot depăși totul în termeni de buget, tehnologii, infrastructură etc. De multe ori trebuie să se împiedice să câștige o anumită cantitate de imunitate față de eșec sau chiar să ajungă la un nivel egal.
# 5)Lipsa feedbackului acționabil: Deoarece nu există părți interesate sau utilizatori de afaceri sau clienți, ca să spunem așa, este dificil să înțelegem ce îi place sau nu utilizatorului final. Companiile joacă în mod constant un joc de ghicire și de multe ori au dificultăți în a reduce distanța dintre ceea ce vor pentru software și ceea ce dorește clientul.
Aceste provocări afectează toate domeniile de dezvoltare a produselor, de marketing și de întreținere și au un impact inerent și testarea produselor.
Pentru a avansa în joc, acest tip de testare trebuie să țină cont de cinci puncte cheie:
- Viteza de dezvoltare și lansări
- Obiectivele produsului pe termen scurt și pe termen lung
- Extinderea și natura concurenței
- Publicul vizat și mediile lor
- Cerințe - Funcțional, performanță, securitate, utilizare, configurare etc.
Înainte de a intra în mai multe detalii, să înțelegem ciclul de viață al produsului (acesta este un ciclu de viață generic al produsului și nu este specific produselor software, dar software-ul urmează un model similar):
O strategie / abordare bună de testare a produsului ar trebui să ia în considerare stadiul actual al produsului în ciclul său de viață.
Citește și => Cum se scrie un document bun de strategie de testare
Exemplu: Produsul companiei XYZ este un software de urmărire a defectelor numit „TrackFast”. Este un produs nou și prima versiune este setată să fie lansată ca o soluție cloud și locală. TrackFast funcționează ca orice alt sistem de gestionare a defectelor și este conceput atât pentru accesul mobil, cât și pentru accesul web. În prezent, există sprinturi de 2 până la 4 săptămâni la care produsul este creat în părți. Sunteți în echipa de testare care testează „TrackFast” înainte de a-și întâlni clienții. Testarea implică verificarea funcționalității, performanței și securității.
cum să vizionezi anime online gratuit
Pentru a rezuma, aceștia sunt parametrii cu care lucrați. Sau, dacă preferați, acesta este contextul dvs.
Să vedem cum să testăm în fiecare etapă. Aceasta este testarea produsului proces, metodă sau ciclu de viață în fiecare etapă.
Etapa # 1) Introducere produs
Deoarece aceasta este prima dată când TrackFast va ieși pe piață, ideea este de a face o primă impresie bună. Așa că nu lăsați nicio piatră neîntoarsă. Testează totul și din orice unghi. În plus, puneți bazele testărilor viitoare.
O strategie bună de testare în acest moment ar trebui să includă următoarele:
- Teste care validează obiectivele pe termen scurt ale TrackFast. „Ce trebuie să fie livrat corect” ar trebui să fie în fruntea efortului de testare. Crea Testele cap la cap (front-end, middleware și backend) pentru testarea amănunțită a fiecărei caracteristici
- Teste care compară TrackFast cu competiția (în mod ideal, aceasta este sarcina proprietarilor de produse, dar, ca tester, putem adăuga cei doi cenți. De asemenea, acest pas este mai ușor dacă software-ul are deja unii colegi. De exemplu: Este ușor să comparați TrackFast cu Bugzilla sau JIRA sau alte sisteme vechi . Dar să spunem că creez o aplicație care face ceva neobișnuit, cum ar fi posibilitatea de a prezice când un bebeluș îi este foame sau ciudat :), ar putea fi greu să găsești o aplicație pe care să o poți folosi ca bază)
- Platformă, browser și dispozitiv teste de compatibilitate
- Teste pentru ușurința instalării , configurați și accelerați
- Teste de performanță, securitate și utilizare
- Teste de integrare dacă se interfață cu alte sisteme. Un exemplu simplu de integrare este că sistemele de urmărire a defectelor interacționează adesea cu clienții de e-mail pentru a trimite notificări
- Planul de regresie - Este o idee bună să semnalizați sau să marcați testele critice care credeți că vor face parte din viitoarele cicluri de regresie și să vă gândiți la automatizarea acestora pentru lansările viitoare
- Planificați problemele cunoscute (o să le adăugați în restante sau să le gestionați ca CR, etc.)
- Flexibilitate de a schimba atunci când produsul trece la următoarea etapă a ciclului de viață.
Uneori ar putea fi o așteptare lungă până când produsul se stinge, așa că folosiți tot timpul pe care îl aveți pentru a face o treabă cât mai aprofundată posibil.
În această etapă, deși există o bucată din produs gata la sfârșitul sprinturilor de 2-4 săptămâni, cel mai adesea fiecare sprint nu are ca rezultat codul livrat. Prin urmare, nu luați în considerare niciodată ultimul test de sprint „făcut și livrat”. Repetați testele critice cu fiecare sprint până la eliberare. Cu fiecare sprint, testați întregul produs pe care îl aveți până în acel moment.
Etapa # 2) Creșterea produsului
După introducerea inițială a proiectului, dacă totul merge bine, așteptați un aflux de activitate deoarece creșterea produsului este o bandă cu ritm rapid. Acum înotați împreună cu rechinii mari și, dacă nu țineți pasul, vă înghițiți.
care este cel mai bun sistem de operare Windows
Aici, versiunile devin mai scurte, îmbunătățirile aduse software-ului devin mai numeroase, iar gradul de regresie devine aproape imposibil de gestionat.
Strategia de testare a produsului ar trebui să funcționeze cu ritmul în care se desfășoară dezvoltarea software-ului și nu ar trebui să devină un blocaj.
Acestea vă pot ajuta:
- Rețineți obiectivele pe termen lung ale proiectului. Nu este vorba despre a-l rezolva acum. Este vorba despre a trăi cu trăsăturile și a prospera cu ele.
- Testați devreme Luați în considerare TDD sau BDD în loc să amâneți testarea până la capăt cu noi cerințe
- Automatizează regresia și întărește-o - Creați o suită de regresie automată în loc, astfel încât să nu rămâneți cu mine terestre netestate în sistemul dvs.
- Dacă proprietarii dvs. de afaceri / produse doresc să se implice în testare, luați în considerare un instrument de automatizare bazat pe limbajul afacerii, cum ar fi Castravete.
- Păstrați utilizabilitatea și proiectarea site-ului central pentru testarea dvs. Deoarece cu cât adăugăm mai multe funcții, cu atât site-ul ar trebui să fie mai curat
- Efectuați teste de performanță și securitate atunci când a avut loc o versiune majoră sau când se face o schimbare semnificativă a arhitecturii. (Server nou adus etc.) Majoritatea sistemelor software nu au nevoie de acest lucru la fiecare lansare.
- Păstrați legătura cu concurența și cunoașteți viziunea produsului
- Adaptează testarea perechii , pentru feedback imediat și remediere. Includeți proprietarul produsului atunci când este posibil
- Planificați modificările și problemele cunoscute
- Încercați să puneți mâna pe feedback-ul clienților și verificați dacă acestea pot fi urmărite ca sugestie de îmbunătățire pentru a menține creșterea constantă. (încă o dată, aceasta nu este responsabilitatea principală a echipei QA, dar toată lumea contează)
Etapa # 3) Maturitatea produsului
Felicitări pentru faptul că produsul dvs. a ajuns până aici. În acest moment, caracteristicile nu se schimbă la fel de des. Echipa de produse va fi mai concentrată să aducă mai multe afaceri sau eforturile lor de marketing. Cu toate acestea, dezvoltarea și testarea produselor nu trebuie și adesea nu se opresc.
Prin urmare, echipa de testare poate:
- Lucrați la maturizarea strategiei de testare. În acest moment, suitele de regresie, metodele de proiectare a testelor și practicile de gestionare a testelor trebuie să funcționeze ca mașini bine unse.
- Concentrați-vă pe detaliile mai fine. Pentru că, în general, produsul funcționează și merge bine, dar, așa cum se spune, „ Dumnezeu este în detalii ” - găsiți chiar și cea mai mică dintre problemele care pot îmbunătăți calitatea sistemului
- Luați în considerare feedback-ul clienților
- Testați periodic performanța și securitatea
- Luați în considerare noile dispozitive, platforme și browsere care ar fi putut intra pe piață de la ultima testare
- Testați manualul de utilizare și paginile cu întrebări frecvente, deoarece acum aveți timp și vă puteți permite.
- Experimentați cu un nou instrument de testare a produselor, servicii sau un proces, deoarece acum puteți.
- Testați procesul de instalare cu fiecare versiune, oricât de mică ar fi și obțineți statistici cu privire la cât de ușor sau dificil este pentru utilizatorul final.
Orice ai face, nu te mulțumi.
Etapa # 4) Declinul produsului / Revenirea la creșterea produsului
Proprietarii de produse și companiile sunt inteligente în prezent și știu foarte bine că nu își pot păstra produsul la fel și se așteaptă ca utilizatorii să rămână loiali. Lucrurile se mișcă prea repede, la fel și produsele.
Deci, TrackFast nu se poate relaxa. Dacă trebuie să aibă o prezență continuă pe piață și să rămână lider, trebuie să evolueze. Îți place sau îl urăști, Facebook a început ca o simplă rețea socială pentru conectarea oamenilor și este o platformă software mare, în sine, integrându-se cu un milion de alte lucruri și rămânând la curent.
Și TrackFast trebuie să evolueze. După ce a demonstrat că este un sistem fiabil și eficient de urmărire a defectelor, acesta trebuie să evolueze sau va scădea. Deci, compania XYZ decide să îmbunătățească TrackFast făcându-l un sistem general de ticketing care poate fi utilizat pentru a urmări orice incidente sau cazuri de către companie, altele decât echipele IT / test (ceva de genul JIRA) și nu doar pentru defectele procesului de dezvoltare software. .
Roata a făcut o întoarcere completă și vă aflați tratând sistemul ca unul nou și urmați strategia pe care am discutat-o în secțiunea Introducere produs. Abia acum sunteți mai experimentat și mai familiarizați cu burghiul. Dar amintiți-vă, cu fiecare nouă întoarcere vine o nouă provocare. Așa că rămâi ascuțit :)
Ce vă face un tester de produs de succes?
- Tester de produse trebuie să aibă un simț al afacerii, să înțeleagă modelele de dezvoltare a livrării rapide și ar trebui să fie ace testeri cărora nu le este frică să experimenteze cu instrumente și să devină singuri unii codificatori, dacă este nevoie. Aceste lucruri pot avea un impact pozitiv asupra oricărui tip de testare, dar sunt o necesitate absolută în acest tip de testare.
- O altă calitate importantă este aceea că testerul produsului trebuie să creadă în produs și doresc cu adevărat să aibă succes. Când, în calitate de tester, cred că software-ul este gunoi total, există puține speranțe că voi face ceva pentru a-l îmbunătăți.
- Împărtășiți viziunea proprietarului produsului / companiei . Dacă nu știți unde merge produsul și cum va evolua, testarea va fi foarte limitată.
- Abilitățile transversale sunt benefice - Știți cum să testați DB, cum să luați etaloane de performanță, cum să activați certificatele de securitate, cum să implementați etc. Fii curios și explorează .
- Nu stabiliți limite - nu credeți că evaluarea manualului de utilizare sau verificarea întrebărilor frecvente nu este treaba dvs. și un scriitor tehnic ar trebui să aibă grijă de el. Ei bine, ar trebui și vor. Dar când îl priviți ca pe o persoană din interior ca pe cineva care cunoaște produsul din afară, feedback-ul dvs. este foarte util.
- Căutați feedback de la utilizatorul final. Următorul set mare de oameni care testează după tine sunt utilizatorii în timp real. Cunoașteți și înțelegeți cu ce fel de probleme se confruntă. Acest lucru vă ajută să vă îmbunătățiți designul testului, astfel încât data viitoare să știți ce să faceți pentru a le evita aceste probleme.
- Lucrează rapid și fii un factor de decizie
- Evitați datoriile tehnice . Într-o situație rapidă de dezvoltare și testare, este ușor să testați exclusiv explorator și să pierdeți cadrul de referință pentru versiunile viitoare. Nu lăsați acest lucru să se întâmple. Mențineți documentația scheletului astfel încât să puteți urmări, urmări și măsura
Cea mai mare diferență între testarea software-ului construit ca serviciu și software-ul construit ca produs este că - în primul, odată ajunsă strategia de testare, se aplică pentru toate testările ulterioare.
Cu toate acestea, pentru un produs, strategia de testare trebuie să se schimbe în funcție de etapa curentă a ciclului de viață în care se află produsul și de modificările dinamicii pieței (dispozitive noi, browsere noi etc.). Strategia de testare a produselor trebuie să fie mult mai flexibilă pentru schimbare.
Despre autor: Acest articol este publicat de Swati S., membru al echipei STH.
Sperăm că acest articol a fost util. Vă rugăm să nu ezitați să postați comentariile, întrebările și feedback-ul dvs. mai jos.
Lectură recomandată
- Cele mai bune instrumente de testare software 2021 (Instrumente de automatizare a testelor de calitate)
- Curs de testare software: La ce institut de testare software ar trebui să mă alătur?
- Testare software Job asistent QA
- Alegerea testării software ca carieră
- Testarea software-ului Conținut tehnic Scriitor freelancer
- Ce este testarea de anduranță în testarea software (exemple)
- Câteva întrebări interesante despre testarea software-ului
- Feedback și recenzii despre cursul de testare software