when opt automation testing
Trebamo li razmotriti automatsko testiranje za projekt? Kada bismo trebali ići na automatsko testiranje?
Testiranje se provodi kako bi se krajnjem korisniku pružili kvalitetni rezultati. Faza ispitivanja je jedan od glavnih aspekata STLC .
Bilo koja se tvrtka više fokusira na testiranje softvera jer njegova kvaliteta donosi optimalno zadovoljstvo kupaca, ali mnogi od njih i dalje se bore u odabiru vrste testiranja, bilo automatiziranim ili ručnim.
Ovaj članak pomaže čitatelju da shvati što je to automatizirano testiranje, kada se za to odlučiti i što je najvažnije, kada ne. Također, naučite optimalno korištenje Alati za automatizaciju za ispitivanje .
Koji god posao bio izveden, trebao bi se provesti učinkovito, a mora biti i isplativ. Štoviše, to bi trebalo imati smisla tako da se kupac osjeća sretnim zbog rezultata.
Što ćete naučiti:
- Testiranje softvera i prednosti
- Inteligencija iza testiranja softvera
- Automatizacija - je li stvarno bitna?
- Zašto automatizacija?
- Faktor rizika
- Kada automatizacija ne bi trebala biti poželjnija?
- Trošak vs ROI za automatizaciju
- Gdje automatizacija može REDUKCIJU učiniti minimalnim i BEZ troška?
- Zaključak
- Preporučena literatura
Testiranje softvera i prednosti
Testiranje softvera obično provodi ispitivač softvera. Razlika između ispitivača i stvarnog korisnika je u tome što će potonji znati samo djelomičnu upotrebu softvera koji se koristi za njihovo poslovanje ili za njihove zadatke i neće znati softver u potpunosti. S druge strane, ispitivač će biti svjestan svih tehničkih i funkcionalnih zahtjeva softvera. Na temelju zahtjeva klijenta, morat će se pripremiti planovi ispitivanja i testovi.
Plan ispitivanja nije ništa drugo nego detaljan plan načina na koji će se postupak ispitivanja provesti. Ovdje će se naći potpuni detalji o broju resursa i izvora koji su uključeni u testiranje, što učiniti i kada to učiniti, što se neće učiniti i okruženje u kojem će se provoditi itd.
Test slučajeve treba pripremiti nakon jasnog razumijevanja funkcionalnog i tehničkog aspekta softvera. Tester mora imati istančan kapacitet promatranja i potpuno znanje o softveru.
Štoviše, trošak ovdje igra djelotvornu ulogu. Kupci radije prihvaćaju softver maksimalne kvalitete uz minimalne troškove. Kad krenemo na ručno testiranje, postupak je zamorniji i dugotrajniji jer ga tester radi ručno.
Na primjer , kada nam treba ‘n’ broj testera izvršiti regresijsko ispitivanje , može proći gotovo 50 sati da se izvrše svi testni slučajevi. A na temelju dostupnosti resursa izvršit će se test slučajevi. No s manje vremena za automatizirano testiranje, provodi se optimalno korištenje resursa, uz maksimalno pokrivanje test slučajeva u usporedbi s ručnim testiranjem.
Inteligencija iza testiranja softvera
Za svaku organizaciju vrlo je važno znati kada započeti postupak testiranja i kada iz njega izaći. Trebali bismo znati kada započeti s testiranjem, jer je beskorisno započeti testiranje kada je faza razvoja gotova i kada traženi kriteriji nisu zadovoljeni. Uvijek je najbolja praksa započeti s fazom izrade testa dok je razvoj u tijeku.
Dolje su navedeni kriteriji za ulaz i izlaz za testiranje softvera:
Kriteriji za ulazak
Nakon što je projektni dokument potpisan, planovi ispitivanja moraju se pripremiti u fazi planiranja. Plan ispitivanja igra vitalnu ulogu. Potrebni hardver mora biti pravilno instaliran i konfiguriran, a funkcionalnost hardvera treba provjeriti. Funkcionalni zahtjevi moraju biti jasni i odobreni. Razvijeni kod programeri moraju jedinstveno testirati i odjaviti.
Test slučajevi i podaci moraju biti pripremljeni i odobreni. Podaci o ispitivanju i aplikacija trebaju biti dostupni. Ispitivač mora posjedovati značajno i dovoljno znanja o prijavi. Resursi trebaju biti dobro obučeni o alatima i moraju biti razjašnjeni sa svim potrebnim funkcionalnostima.
Tester mora biti dostupan. Kada se ne postigne bilo koji od kriterija, uskraćuju se ulazni kriteriji ispitivanja.
(Bilješka: Kliknite bilo koju sliku za uvećani prikaz)
Kriteriji za izlaz
Tek kada je barem 95% obveznih testnih slučajeva zaključano s rezultatom 'položeno', možemo izaći iz faze testiranja proizvoda. Međutim, nije tako lako utvrditi kada se testiranje softvera može zaustaviti ili treba li još izvršiti. A ovakva se situacija često javlja.
Glavni kriteriji dati su u nastavku:
- Kada se isprave svi bugovi.
- Kad se istekne rok.
- Kad se proračun iscrpi ili iscrpi.
- Kada polože sve ispitne slučajeve.
- Kad se ugovor potpiše.
- Kada se izvrši određeni postotak ispitivanja.
- Kada Alfa i Beta testiranje završava.
Kriteriji za izlazak mogu se izvesti isključivo na temelju čimbenika kao što su rizik, trošak itd. Kada je postignuto testiranje glavnih funkcionalnih zahtjeva, tada će se testiranje obično zaustaviti i nikada neće tražiti manje bugove, što će stvoriti probleme kasnija razdoblja.
Primjer: Softver ABC je u fazi dizajniranja. Razvoj i ispitivanje konstrukcije uglavnom se odvijaju istodobno. Nakon zamrzavanja dizajna započinje razvoj softvera. Završetak razvoja softvera, kako je dogovoreno, ukazuje na kriterije za prijavu. Isporuke ovdje pruža razvojni tim. Sadrži napomene o izdanju i poznate probleme.
Nakon nekoliko iteracija testiranja, kada nijedan glavni / blokator / show stopers ne čeka rješavanje i 95% testiranja rezultira prolazom, tada se to naziva izlaznim kriterijima.
Automatizacija - je li stvarno bitna?
Kad trebamo odlučiti trebamo li Tehnika automatiziranog ispitivanja ili ne, ovdje se postavlja pitanje dostupnih resursa. Razlozi koje trebamo automatizirati su u provjeri rade li protok podataka i razvijena funkcionalnost prema očekivanjima bez ručne intervencije ili ne. Uglavnom se koristi na mjestima gdje će softver imati promjene u obliku više izdanja / ciklusa itd.
najbolji besplatni programi za podešavanje računala -
Na kraju razvoja svakog ciklusa izvršit će se testiranje trenutno dodane funkcionalnosti. Uz to, provest će se testiranje stare funkcionalnosti kako bi se osiguralo da stare funkcionalnosti nisu slomljene. Ovo je glavni dio koji ima opseg za automatizaciju.
Prilikom provjere logike vođene kodom i zahtjeva za GUI, može se odabrati Automatsko testiranje, pod uvjetom da je faktor rizika visok.
Primjer: Za softver ABC česte su nadogradnje, ažuriranja koja traži klijent, a pružaju ih programeri. Stoga se kao dio testiranja vrši regresija za softver koji je već u pogonu i radi u proizvodnji. Bez obzira na bilo koji broj izdanja, nadogradnji i ažuriranja, trenutna verzija bit će važeća.
Recimo da je potrebno 10 dana ručnih napora kako bi se pokrilo regresijsko ispitivanje, a zatim se mora poduzeti najveća pažnja za njihovu automatizaciju. Možete uštedjeti najmanje 60% truda i ručni rad 10 * 8 = 80 sati.
Automatizacija može izvršiti samo 80/24 = 3,33 dana. To štedi približno 6,67.
Zašto automatizacija?
Automatizacija se može odabrati samo kada:
- Aplikacija ima vrlo veliko područje s visokim stupnjem ulaganja napora u regresiju.
- Optimizacija troškova dogodila se zbog ručnih pogrešaka.
- Softver ima više verzija i izdanja.
- Isplativo je dugoročno.
- Čimbenik rizika veći je za širi opseg izvođenja testa.
- Podaci o troškovima i matematički izračuni uključeni su u softversku funkcionalnost.
- Povećava se tempo izvršavanja, učinkovitost zajedno s kvalitetom softvera.
- Vremena je manje, čak i za visoko rizična testiranja softvera.
Faktor rizika
Čimbenik rizika postaje dominantno uobičajen u poslu gdje postoji mnogo ovisnosti o vremenskom faktoru. Softver koji radi na temelju transakcijskih sustava i koji radi na više aplikacija zahtijevat će da softver djeluje idealno prema dizajnu softvera. U ovom slučaju postoje mnogi rizici povezani s postizanjem ispravnog funkcionalnog ponašanja.
Ovdje će automatizacija biti od velike pomoći u obavljanju funkcionalnih transakcija boljim tempom prema softverskom mehanizmu.
Na primjer , u slučaju indikatora Forex tržišta, vremenski faktor je vrlo važan i kritičan. Promjene u zalihama i robama događaju se s obzirom na vrijeme, ponekad i manje od sekundi. Ovdje automatizacija može pomoći u testiranju takvog softvera s visokim rizikom.
Primjer: Softver ABC ima višestruka ažuriranja i nadogradnje. Kako bi se uštedjeli ručni napori i smanjilo vrijeme preokreta za fazu testiranja, osnovna verzija ili stare funkcionalnosti mogu se automatizirati. To može postati valjano tek kad osnovne funkcije ostanu nepromijenjene.
Prednost automatizacije je ta što se njima može upravljati bez ikakvih ručnih intervencija. Čak se i to može izvesti paralelno s testiranjem novijih funkcionalnosti. Stoga automatizacija štedi mnogo truda i puno vremena.
Kada automatizacija ne bi trebala biti poželjnija?
Među nekoliko organizacija postoji pitanje koje glasi - Zašto 100% automatizacija nije moguća?
Odgovor stručnjaka je NE jer su kvalificirani korisnici dužni provesti automatizirano testiranje, a moraju biti i dobro obučeni. Automatizacija se ne može provesti tijekom početne faze kriterija i zahtjevi aplikacija neće biti jasni.
Obično se daje prednost automatizaciji od druge iteracije bilo kojeg izdanja softvera. Korisničko sučelje može se mijenjati, što je skuplje, a održavanje skripte također je skuplje. Kada troškovi potrebni za alat za automatizaciju premašuju proračun projekta, možemo reći ne.
Primjer: Softver XYZ je vrsta web mjesta za e-trgovinu na kojem se zahtjevi klijenta ne zamrzavaju i stalno se mijenjaju kada klijenti to zahtijevaju.
Ovdje, u ovom slučaju, automatizacija ne može pomoći regresiji. To je zato što se stare funkcionalnosti koje nisu valjane ne bi trebale testirati, pa ih stoga treba raditi ručno. Na primjer, klijent mora imati sve okvire s popisima u osnovnom softveru kako bi se promijenio kao padajuće okvire.
Trošak vs ROI za automatizaciju
ROI je vrlo nizak kada u početku krenemo u automatizaciju, jer je automatizacija prvi put skupa. ROI se povećava kako se ručni napor u testiranju softvera spušta od ponavljanja drugog izdanja. Moramo biti svjesni očekivanog ishoda bilo kojeg test slučaja prije Automatizacije.
Razmislite o dizajnu test slučajeva koji je važniji pri odabiru automatizacije i bilo kojeg alata kako biste osigurali da neće povećati troškove.
Gdje automatizacija može REDUKCIJU učiniti minimalnim i BEZ troška?
Čak i automatizacija košta jer je potreban potreban alat za testiranje. Resurse treba obučiti pomoću određenog alata. Odabrani alat mora biti izvediv za testiranje svih područja softvera.
Dakle, odabir alata trebaju pažljivo obaviti stručnjaci za automatizaciju.
Primjer: Razmotrite proizvod XYZ koji se bavi osiguranjem. Kako bi smanjila faktor troškova, tvrtka je koristila samo ručno testiranje, no što se tiče osiguranja, faktor rizika je visok i može koštati tvrtku kad bilo koji od izračuna premije pođe po zlu. Čitav gubitak bit će ili za upravu ili krajnjem korisniku. Krajnji korisnik neće snositi gubitak, dok to tvrtka mora.
Kada se izračunati iznos premije ne podudara s izvornom premijom (tj. Kada postoji razlika u izračunu premije za prednji i stražnji kraj), tada nastaje veliki problem između kupca i prodavača proizvoda. Može sadržavati mnogo modula poput automobila, kuće i drugih.
Kad nešto pođe po zlu, to je potpuni gubitak. Razlika u izračunu može imati smisla za ispitivača i može dovesti do bugova. U ovom projektu, ručno ispitivanje može se obaviti za osnovno korisničko sučelje, poput provjere TIN broja, društvenog ID-a i drugih podataka povezanih s korisničkim portfeljem, pa se stoga može ručno testirati tamo gdje je faktor rizika nizak. M ili bi tvrtka profitirala, što više vole automatizaciju za testiranje svog softvera.
Zaključak
I automatizacija i ručno testiranje imaju prednosti i nedostatke. Tek kada budemo jasni s konceptima i zahtjevima, moći ćemo odabrati kakvu vrstu testiranja provesti.
Nijedan projekt ne može se testirati samo ručnim ili automatiziranim testiranjem. Ovisi o dizajnu, platformi i tehnologiji s kojom je softver razvijen. Dakle, prilikom donošenja odluke mora biti oprezan u odabiru metode ispitivanja i koristiti se savjetima stručnjaka.
U gornjem članku možda smo propustili nekoliko čimbenika, ljubazno podijelite čimbenike za koje smatrate da su važni prilikom odabira automatizacije ili čak alata za automatizaciju.
U međuvremenu, slobodno podijelite svoje komentare / prijedloge o ovom članku.
Preporučena literatura
- Najbolji alati za testiranje softvera 2021. (Alati za automatizaciju ispitivanja kvalitete)
- Izazovi ručnog i automatiziranog ispitivanja
- Top 10+ najboljih knjiga za testiranje softvera (knjige za ručno testiranje i automatizaciju)
- Posao za QA pomoćnika za testiranje softvera
- 11 najboljih alata za automatizaciju za testiranje Android aplikacija (Android Tools Testing Tools)
- Jeste li stručnjak za ručno ili automatizirano testiranje? Radite skraćeno za nas!
- Tečaj za testiranje softvera: Koji bih se institut za testiranje softvera trebao pridružiti?
- Odabir testiranja softvera za vašu karijeru