how perform software product testing detailed process
Softverski proizvodi trebaju svoj vlastiti jedinstveni pristup za adekvatno i pravilno testiranje. Timovi ih često tretiraju kao bilo koji drugi softver (tj. Interne programe izrađene za određenog klijenta ili tim; nedostupni široj javnosti; ne stvaraju prihod) i to je početna točka problema.
Za testiranje softverskih proizvoda potreban je prilagođeni stil i strategija testiranja kako bi se dodala vrijednost. Razvoj softverskih proizvoda i održavanje sami po sebi su složeni ekosustav i za napredak testera se treba prilagoditi.
Dopustite mi da uzmem trenutak da objasnim zašto je to važno i zašto mislim da je razvoj proizvoda složen, složen i složen, čak i u najbolja vremena.
Što ćete naučiti:
- Izazovi razvoja softverskih proizvoda:
- Faza # 1) Uvod u proizvod
- Faza # 2) Rast proizvoda
- Faza # 3) Zrelost proizvoda
- Faza # 4) Pad proizvoda / kruženje natrag do rasta proizvoda
- Što vas čini uspješnim ispitivačem proizvoda?
- Preporučena literatura
Izazovi razvoja softverskih proizvoda:
Evo nekoliko izazova s kojima se susreću timovi za razvoj softverskih proizvoda:
# 1)Nedostatak kontrole nad demografskim podacima korisnika, uređajima, okruženjima, platformama itd. : Softverski proizvodi, za razliku od softvera izrađenog za određene dionike, ne koriste se u kontroliranim i predvidljivim situacijama. Mnogo je previše previše čimbenika koje treba uzeti u obzir.
#dva)Maglovita vizija proizvoda : Ponašanje i značajke proizvoda zauvijek se mijenjaju i put do zrelosti nije jasno vidljiv. Ili proizvod raste prebrzo pa izmiče kontroli da timovi ne znaju što se događa.
# 3)Agresivni vremenski trakovi : Zbog velike konkurencije na tržištu softverskih proizvoda stvari se moraju kretati vratolomnom brzinom i timovi moraju biti korak ispred svojih vršnjaka. Inače će sigurno izgubiti od konkurencije.
# 4)Strah neuspjeha : Softverski proizvodi obično su inovativni. Dakle, njihov uspjeh nije uvijek dat. To je razlog zbog kojeg tvrtke ne mogu izaći na kraj s proračunom, tehnologijama, infrastrukturom itd. Često se moraju suzdržati kako bi stekle određenu imunitet od neuspjeha ili čak loma.
# 5)Nedostatak djelotvornih povratnih informacija: Budući da nema dionika ili poslovnih korisnika ili klijenata, tako je reći, teško je razumjeti što se krajnjem korisniku može, a što ne. Tvrtke neprestano igraju igru pogađanja i često imaju poteškoća u premošćavanju jaza između onoga što žele za softver i onoga što kupac želi.
Ti izazovi utječu na sva područja razvoja proizvoda, marketinga i održavanja, a u osnovi utječu i na testiranje proizvoda.
Da bi napredovao u igri, ova vrsta testiranja mora uzeti u obzir pet ključnih točaka:
- Brzina razvoja i izdanja
- Kratkoročni i dugoročni ciljevi proizvoda
- Opseg i priroda konkurencije
- Ciljajte publiku i njezino okruženje
- Zahtjevi - Funkcionalnost, izvedba, sigurnost, upotrebljivost, konfiguracija itd.
Prije nego što uđemo u više pojedinosti, shvatimo životni ciklus proizvoda (Ovo je generički životni ciklus proizvoda i nije specifičan za softverske proizvode, ali softver slijedi sličan obrazac):
Dobra strategija / pristup ispitivanju proizvoda trebala bi uzeti u obzir trenutnu fazu proizvoda u njegovom životnom ciklusu.
Također pročitajte => Kako napisati dobar dokument o strategiji ispitivanja
Primjer: Proizvod tvrtke XYZ je softver za praćenje kvara nazvan 'TrackFast'. To je novi proizvod, a prva verzija trebala bi biti lansirana kao rješenje u oblaku i lokalno. TrackFast djeluje poput bilo kojeg drugog sustava za upravljanje nedostacima i napravljen je za mobilni i web pristup. Trenutno postoje 2 do 4 tjedna sprinta na kojima je proizvod stvoren u dijelovima. Nalazite se u ispitnom timu koji testira ‘TrackFast’ prije nego što upozna svoje kupce. Testiranje uključuje provjeru funkcionalnosti, performansi i sigurnosti.
nedefinirana referenca na funkciju klase c ++
Da rezimiramo, ovo su parametri s kojima radite. Ili ako vam je draže, ovo je vaš kontekst
Pogledajmo kako testirati u svakoj fazi. Ovo je ispitivanje proizvoda procesa, metode ili životnog ciklusa u svakoj fazi.
Faza # 1) Uvod u proizvod
Budući da je ovo prvi put da TrackFast izlazi na tržište, ideja je ostaviti dobar prvi dojam. Stoga ne ostavljajte kamen na kamenu. Testirajte sve i iz svakog kuta. Uz to, postaviti temelje za buduća ispitivanja.
Dobra testna strategija u ovom trenutku trebala bi uključivati sljedeće:
- Testovi koji potvrđuju kratkoročne ciljeve TrackFasta. 'Što treba ispravno otpremiti' trebalo bi biti u prvom planu pri testiranju. Stvoriti Testovi od kraja do kraja (front end, middleware i backkend) za temeljito testiranje svake značajke
- Testovi koji uspoređuju TrackFast s konkurencijom (u idealnom slučaju to je posao vlasnika proizvoda, ali kao tester možemo dodati naša dva centa. Također, ovaj je korak lakši ako softver već ima neke vršnjake. Na primjer: Lako je usporediti TrackFast s Bugzillom ili JIRA-om ili drugi naslijeđeni sustavi . Ali recimo da stvaram aplikaciju koja čini nešto neobično, poput mogućnosti predviđanja kada je dijete gladno ili vrckavo :), možda će biti teško pronaći aplikaciju koju možete koristiti kao početnu liniju)
- Platforma, preglednik i uređaj testovi kompatibilnosti
- Ispitivanja jednostavnosti ugradnje , postavljanje i ubrzanje
- Ispitivanja performansi, sigurnosti i upotrebljivosti
- Testovi integracije ako je u sučelju s drugim sustavima. Jednostavan primjer integracije je da sustavi za praćenje nedostataka često komuniciraju s klijentima e-pošte radi slanja obavijesti
- Plan za regresiju - Dobra je ideja označiti ili označiti kritične testove za koje mislite da će biti dio budućih ciklusa regresije i razmisliti o njihovoj automatizaciji za buduća izdanja
- Planirajte poznate probleme (hoćete li ih dodati u zaostatak ili ih tretirati kao CR-ove, itd.)
- Fleksibilnost za promjenu kada proizvod pređe u sljedeću fazu životnog ciklusa.
Ponekad može proći dugo čekanje prije nego što se proizvod ugasi, zato koristite svo vrijeme koje morate obaviti što temeljitijim poslom.
U ovoj fazi, iako je dio proizvoda spreman na kraju 2-4 tjedna sprinta, najčešće svaki sprint ne rezultira isporučenim kodom. Stoga nikad nemojte smatrati posljednje sprintersko testiranje 'gotovo i isporučeno'. Ponavljajte kritične testove sa svakim sprintom do puštanja. Svakim sprintom testirajte cijeli proizvod koji imate do tog trenutka.
Faza # 2) Rast proizvoda
Nakon početnog uvođenja projekta, ako sve bude u redu, očekujte priljev aktivnosti jer je Rast proizvoda brza staza. Sada plivate zajedno s velikim morskim psima i ako ne nastavite tako, progutaćete se.
Ovdje se izdanja skraćuju, poboljšanja u softveru postaju sve brojnija, a opseg regresije postaje gotovo neupravljiv.
kako pretvoriti char u int c ++
Strategija ispitivanja proizvoda trebala bi raditi tempom koji traje razvoj softvera i ne bi trebala postati usko grlo.
Ovo vam može pomoći:
- Imajte na umu dugoročne ciljeve projekta. Ne radi se o tome da se to sada završi. Riječ je o tome da živite sa značajkama i napredujete s njima.
- Testirajte rano- Uzmite u obzir TDD ili BDD umjesto odgađanja testiranja do kraja s novim zahtjevima
- Automatizirajte regresiju i ojačajte je - Stvorite automatizirani regresijski paket na mjestu kako vam ne bi ostale neprovjerene nagazne mine u vašem sustavu
- Ako se vlasnici vaše tvrtke / proizvoda žele uključiti u testiranje, razmotrite alat za automatizaciju zasnovan na poslovnom jeziku, poput Krastavca.
- Zadržite upotrebljivost i dizajn web mjesta najvažniji za vaše testiranje. Budući da što više značajki dodamo, to bi web stranica trebala izgledati čišće
- Izvršite testiranje performansi i sigurnosti kada se dogodi glavno izdanje ili se dogodi značajna promjena u arhitekturi. (Doveden novi poslužitelj itd.) Većini softverskih sustava to nije potrebno sa svakim izdanjem.
- Budite u kontaktu s konkurencijom i upoznajte viziju proizvoda
- Prilagodite testiranje u paru , za trenutne povratne informacije i popravljanje. Uključite vlasnika proizvoda kad je to moguće
- Planirajte promjene i poznate probleme
- Pokušajte dobiti povratne informacije kupaca i provjeriti mogu li se pratiti kao prijedlog poboljšanja kako bi rast ostao konstantan. (još jednom, ovo nije primarna odgovornost QA tima, ali svi računaju)
Faza # 3) Zrelost proizvoda
Čestitamo što je vaš proizvod stigao tako daleko. U ovom se trenutku značajke ne mijenjaju tako često. Tim proizvoda bit će usmjereniji na dovođenje većeg broja poslova ili njihovih marketinških napora. Međutim, razvoj i ispitivanje proizvoda ne moraju i često se ne zaustavljaju.
Stoga tim za testiranje može:
- Poradite na sazrijevanju strategije testiranja. Do ovog trenutka, vaši regresijski paketi, metode dizajna ispitivanja i prakse upravljanja testovima moraju raditi poput dobro podmazanih strojeva.
- Usredotočite se na sitnije detalje. Jer u cjelini proizvod djeluje i ide mu dobro, ali kako oni kažu- ' Bog je u detaljima ' - pronaći i najmanji problem koji može poboljšati kvalitetu sustava
- Razmotrite povratne informacije kupaca
- Povremeno testirajte izvedbu i sigurnost
- Uzmite u obzir nove uređaje, platforme i preglednike koji su se mogli pojaviti na tržištu od zadnjeg testiranja
- Testirajte korisnički priručnik i stranice s čestim pitanjima, jer do sada imate vremena i možete si to priuštiti.
- Eksperimentirajte s novim alatima, uslugama ili postupkom za testiranje proizvoda jer sada to možete.
- Testirajte postupak instalacije sa svakim izdanjem, koliko god ono malo bilo i dobijte statistiku koliko je krajnji korisnik lak ili težak.
Što god radili, nemojte se samozadovoljiti.
Faza # 4) Pad proizvoda / kruženje natrag do rasta proizvoda
Vlasnici proizvoda i tvrtke danas su pametni i vrlo dobro znaju da ne mogu zadržati svoj proizvod istim i očekuju da će korisnici ostati vjerni. Stvari se prebrzo kreću, pa tako i proizvodi.
Dakle, TrackFast ne može sjesti i opustiti se. Ako treba imati kontinuiranu prisutnost na tržištu i ostati vodeći, mora se razvijati. Sviđalo vam se ili mrzilo, Facebook je započeo kao jednostavna društvena mreža koja povezuje ljude i velika je softverska platforma koja se sama po sebi integrira s milijun drugih stvari i ostaje aktualna.
I TrackFast se mora razvijati. Nakon što dokaže da je pouzdan i učinkovit sustav za praćenje kvara, mora se razvijati ili će propadati. Dakle, tvrtka XYZ odlučuje poboljšati TrackFast čineći ga općim sustavom izdavanja ulaznica koji se može koristiti za praćenje bilo kakvih incidenata ili slučajeva od strane tvrtke koja nije IT / testni timovi (nešto poput JIRA), a ne samo zbog nedostataka u procesu razvoja softvera. .
Kotač se potpuno okrenuo i vi se ponašate prema sustavu kao prema potpuno novom i slijedite strategiju o kojoj smo razgovarali u odjeljku Uvod u proizvod. Tek sada ste iskusniji i upoznati s bušilicom. Ali upamtite, sa svakim novim zaokretom dolazi i novi izazov. Stoga ostanite oštri :)
Što vas čini uspješnim ispitivačem proizvoda?
- Ispitivači proizvoda moraju imati istančan poslovni smisao, razumijevanje brzih modela razvoja isporuke i trebaju biti testeri koji se ne boje eksperimentirati s alatima i sami postati malo programeri ako je potrebno. Te stvari mogu imati pozitivan utjecaj na bilo koju vrstu testiranja, ali su apsolutna potreba ove vrste testiranja.
- Druga važna kvaliteta je da a ispitivač proizvoda mora vjerovati u proizvod i iskreno želim da to uspije. Kad kao tester pomislim da je softver totalno smeće, malo je nade da ću učiniti bilo što da ga popravim.
- Podijelite viziju vlasnika proizvoda / tvrtke . Ako ne znate kamo proizvod ide i kako će se razvijati, testiranje će biti jako ograničeno.
- Međusobne funkcionalne vještine su korisne - Znati testirati DB, kako uzeti mjerila performansi, kako omogućiti sigurnosne certifikate, kako rasporediti itd. Budite znatiželjni i istražujte .
- Ne postavljajte granice - nemojte misliti da ocjenjivanje korisničkog priručnika ili provjera često postavljanih pitanja nije vaš posao, a tehnički pisac trebao bi se pobrinuti za to. Pa, trebali bi i hoće. Ali kad na njega gledate kao na insajdera kao na nekoga tko proizvod poznaje iznutra, vaše su povratne informacije vrlo korisne.
- Tražite povratne informacije krajnjih korisnika. Sljedeći veliki broj ljudi koji testiraju nakon vas korisnici su u stvarnom vremenu. Znati i razumjeti s kakvim se problemima suočavaju. To vam pomaže da poboljšate dizajn testa, pa sljedeći put budete znali što učiniti kako biste izbjegli te probleme.
- Radite brzo i budite donosilac odluka
- Izbjegavajte tehnički dug . U situaciji brzog razvoja i testiranja lako je istraživački isključivo testirati i izgubiti referentni okvir za buduća izdanja. Ne dopustite da se ovo dogodi. Održavajte skeletnu dokumentaciju kako biste mogli pratiti, pratiti i mjeriti
Najveća razlika između testiranja softvera izgrađenog kao usluga i softvera izgrađenog kao proizvod je u tome što se on - kad se jednom dođe do strategije testiranja, primjenjuje za sva sljedeća testiranja.
Međutim, za proizvod se strategija ispitivanja mora mijenjati ovisno o trenutnoj životnoj fazi proizvoda u kojoj se nalazi i promjenama na tržišnoj dinamici (novi uređaji, novi preglednici itd.). Strategija ispitivanja proizvoda mora biti puno fleksibilnija za promjenu.
O autoru: Ovaj članak objavio je član STH tima Swati S.
Nadamo se da je ovaj članak bio koristan. Slobodno objavite svoje komentare, pitanja i povratne informacije u nastavku.
Preporučena literatura
- Najbolji alati za testiranje softvera 2021. (Alati za automatizaciju ispitivanja kvalitete)
- Tečaj za testiranje softvera: Koji bih se institut za testiranje softvera trebao pridružiti?
- Posao za QA pomoćnika za testiranje softvera
- Odabir testiranja softvera za vašu karijeru
- Ispitivanje softvera Posao pisca tehničkog sadržaja Posao slobodnjaka
- Što je ispitivanje izdržljivosti u testiranju softvera (primjeri)
- Neka zanimljiva pitanja za ispitivanje softverskog testiranja
- Povratne informacije i kritike o tečaju softverskog testiranja