top 10 test automation strategies
Ovo je zadnji članak u serija automatizacije ispitivanja . Ovaj članak sažima najbolje prakse i strategije za automatizaciju ispitivanja.
Iako se u našim prethodnim člancima spominju najbolje prakse (a neke od njih ovdje se mogu ponoviti), snažno sam osjetio da moram navesti nekoliko, ali najvažnije najbolje prakse automatizacije ovdje u jednom članku za referencu .
Te su strategije preuzete iz mog vlastitog iskustva i iz literature o ispitivanju gurua poput Michaela Boltona, Jamesa Bacha i Cema Kanera. Te bi se postupke trebalo pridržavati u svakom projektu automatizacije.
Što ćete naučiti:
- 10 najboljih strategija i praksi automatizacije ispitivanja
- # 1. Angažirajte namjenskog inženjera automatizacije ili tim
- # 2. Alat za automatizaciju je važan, ali nije rješenje svega
- # 3. Odaberite alat za automatizaciju koji je poznat vašim resursima
- # 4. Poznavati aplikaciju koja se testira
- # 5. Dobra automatizacija znači dobar ručni test
- # 6. Utvrdite mogućnosti s automatizacijom
- # 7. Ne možete sve automatizirati
- # 8. Izbjegavajte automatizaciju GUI-a kada postoji alternativa
- # 9. Koristite automatizaciju i u druge korisne svrhe
- # 10. Automatizacija je razvoj softvera
- Zaključak
- Preporučena literatura
10 najboljih strategija i praksi automatizacije ispitivanja
Idemo..
što je mrežni sigurnosni ključ
# 1. Angažirajte namjenskog inženjera automatizacije ili tim
Ovo je osnovna stvar. Ne tražite od ručnih testera da se prepuste automatizaciji ispitivanja. Ako želite da izvrše automatizaciju ispitivanja, oslobodite ih ručnog ispitivanja. Automatizacija ispitivanja posao je s punim radnim vremenom. Za to su vam potrebni namjenski resursi.
Preporučujem izgradnju testnog tima za automatizaciju koji se sastoji od najmanje jednog arhitekta automatizacije. Možete angažirati više inženjera automatizacije za rad pod vodstvom testa arhitekture automatizacije. Broj inženjera automatizacije ovisi o broju i veličini vaših proizvoda.
# 2. Alat za automatizaciju je važan, ali nije rješenje svega
Razgovarali smo o odabiru alata . Ali odabir pravog alata tek je početak. Neki upravitelji zabluđuju da ako odaberu pravi alat, mogu lako automatizirati bilo što. Pazite, alati za automatizaciju ne daju vam sve. Oni olakšavaju postupak. Ali za dovršetak postupka trebaju vam vješti resursi.
Alati za automatizaciju često su pogrešni i zaglavili su u prepoznavanju složenih objekata u aplikaciji. Resursi koje unajmite, ako su vješti, pronalaze zaobilazno rješenje koje postupak odvodi naprijed. Inače, ako ne angažirate dobre resurse, sam Alat ne može jamčiti uspješnu automatizaciju.
# 3. Odaberite alat za automatizaciju koji je poznat vašim resursima
Ako su vaši resursi upoznati s C #, a vaša aplikacija koju treba testirati također je razvijena u C #, onda nema smisla odabrati alat koji ne nudi C # za pisanje skripti.
Učenje jezika je proces koji traje. Izbjegavajte ovu krivulju učenja kupnjom alata koji nudi minimalnu krivulju učenja.
# 4. Poznavati aplikaciju koja se testira
Odabir alata uvelike ovisi o tehnologijama koje se koriste u vašem proizvodu. Prije početka automatizacije upoznajte svoj proizvod iznutra.
Ako je to web aplikacija, znajte koje će preglednike podržati. Poznavati tehnologije koje se u njemu koriste. Ako se radi o radnoj površini, znajte na kojem se jeziku nadograđuje. Koje se kontrole treće strane koriste u aplikaciji. To će vam pomoći da olakšate odabir alata i buduću automatizaciju.
# 5. Dobra automatizacija znači dobar ručni test
Lijepo napisani jaki ručni testovi spasite nas od automatizacije onih test slučajeva koje je lako automatizirati, ali su slabi u pronalaženju nedostataka.
Evo citata iz knjige Lekcije naučene u testiranju softvera:
'Automatizacija bez dobrog dizajna testa može rezultirati puno aktivnosti, ali malo vrijednosti.'
Uvijek je preporučljivo prvo napisati test u ručnom obliku. Utvrdite sve preduvjete i podatke o ispitivanju . Jasno napišite korake i ispred svakog koraka napišite očekivane rezultate. Cilj jednog test slučaja trebao bi biti jasan i trebao bi biti manje ovisan o ostalim test slučajevima. Inženjeri automatizacije trebali bi barem jednom ručno pokrenuti ovaj test kako bi jasno odlučili koje objekte treba identificirati i kakav će biti tijek navigacije. Postavljajte pitanja ručnim testerima.
Ova aktivnost ponekad pomaže identificirati pogreške čak i prije nego što je napisana skripta automatizacije. Stručnjaci kažu da se većina programskih pogrešaka identificira u fazi razvoja testne automatizacije, a ne u stvarnoj fazi izvršenja.
uzorak dokumenta plana testa za mobilnu aplikaciju
# 6. Utvrdite mogućnosti s automatizacijom
Ako ste predani s ručni test slučaj za automatizaciju , nemojte samo automatizirati taj testni slučaj kakav jest. Umjesto toga, pronađite daljnje mogućnosti u svojoj automatizaciji kako biste proširili opseg ovog test slučaja.
Na primjer, ako je zahtjev za ručni test slučaj, morate se prijaviti na web stranicu. Ovaj testni slučaj možete proširiti tako da ga napravite na temelju podataka. Navedite sve moguće scenarije prijave poput nevaljane lozinke, prazne lozinke, nevažećeg korisničkog imena, nevaljane e-pošte, praznog korisničkog imena, sjetite me provjerenog, neprovjerenog itd. Navedite moguće scenarije zajedno s njihovim očekivanim rezultatom u datoteku excel i stavite ovu datoteku excel kao izvor podataka za vaš testni slučaj. Sada ovaj jedan ručni testni slučaj, nakon što je automatiziran, može u jednom potezu testirati sve moguće scenarije.
Uvijek tražite mogućnosti koje se mogu postići automatizacijom, ali je teško ručno. Kao što su scenariji ispitivanja opterećenja, mjerila performansi, isti testovi u različitim okruženjima s različitim konfiguracijama, curenje memorije, testovi visoke preciznosti itd. To su sve teški scenariji za ručne testere.
# 7. Ne možete sve automatizirati
Automatizacija znači češće izvođenje manje testova. Morate započeti s malim napadom na svoje testove dima. Zatim pokrijte svoj izgraditi testove prihvaćanja . Zatim prijeđite na često provedene testove, a zatim na vrijeme polaganja testova. No pobrinite se da svaki test koji automatizirate štedi vrijeme da se ručni tester usredotoči na važnije stvari.
Automatizacija nije ovdje da bi zamijenila ručne testere. Niti može. Ovdje je potrebno oduzeti ponovljeni rad ručnim testerima kako bi mogli iskoristiti svoj puni fokus i snagu u pronalaženju novih scenarija testiranja i grešaka. (Pročitajte moj članak Zablude o automatizaciji ispitivanja)
Automatizirajte nekoliko testova koji su vrijedan i štedi vrijeme ili teško učiniti za ručne testere. Ako ste to učinili, zadatak automatizacije je gotov.
# 8. Izbjegavajte automatizaciju GUI-a kada postoji alternativa
GUI automatizacija uvijek je teža od ostalih vrsta automatiziranih testova. Dakle, ako postoji situacija kada svoj cilj možete postići ne automatiziranjem GUI-ja, već nekim drugim metodama poput unosa naredbenog retka, tada je najbolja strategija izbjegavanje automatizacije GUI-ja.
Na primjer, želite testirati instalaciju aplikacije. Cilj je provjeriti je li aplikacija instalirana ili nije u određenom okruženju. Jedan od pristupa je pokretanje instalacije i klik na ' Sljedeći Gumb 'više puta kroz vaš alat za automatizaciju. Može biti nezgodno, dugotrajno i podložno je održavanju ako se promijeni korisničko sučelje. Drugi pristup je pokretanje instalacije aplikacije batch datotekom koja daje tihe argumente. Aplikacija će se tiho instalirati ne prikazujući GUI. Cilj će se postići za manje vremena i na pouzdaniji način.
# 9. Koristite automatizaciju i u druge korisne svrhe
Automatizacija je tako fantastična stvar. Iz nje možete postići takve stvari o kojima inače ne razmišljate. Automatizacija nije samo programiranje ručnog test slučaja. Umjesto toga, možete koristiti automatizaciju za olakšavanje različitih operacija u vašoj organizaciji.
Na primjer, možete koristiti automatizaciju za automatsko stvaranje matičnih podataka i konfiguracije postavljanja za ručne testere. Kako bi mogli započeti testiranje što je ranije moguće.
Mogu dati jedan primjer iz vlastite tvrtke. Željeli smo se prebaciti s našeg alata za upravljanje testnim slučajevima. Koristili smo 'Test Director' (sada HP ALM) i htjeli smo se prebaciti na TFS (Team Foundation Server). Imali smo oko 4000 ručnih ispitnih slučajeva i bugova u Direktoru ispitivanja. Ručni prijenos na TFS mogao bi potrajati oko mjesec dana. Zato me moj menadžer zamolio da isprobam automatizaciju.
Iskopao sam te alate i otkrio da Test Director koristi SQL poslužitelj kao svoje spremište. Za TFS sam otkrio alat koji može čitati test slučajeve i greške iz excel datoteke ako su napisani u određenom formatu i može ih umetnuti u TFS. Ostatak priče je jednostavan. Napisao sam SQL upit za dohvaćanje svih testnih slučajeva i programskih pogrešaka te ih izvezao u Excel datoteku u određenom formatu. Tada sam upotrijebio alat koji čita sve slučajeve ispitivanja i greške iz excel datoteke i umetnuo ih u TFS. Cijeli postupak trajao je samo 3 sata. Moj menadžer je bio jako sretan. Nadam se da ste i vi shvatili moju poantu.
# 10. Automatizacija je razvoj softvera
Ako razvijate kvalitetan softver, trebaju mu najbolje prakse. Za pisanje koda kvalitete trebaju recenzije koda. Treba slijediti okvir ili obrazac dizajna. Potrebno je stalno održavanje.
Automatizacija je u osnovi razvoj softvera. Dakle, sve najbolje prakse koje slijedite kada razvijate softver trebaju se slijediti u automatizaciji. Okvir za automatizaciju trebao bi biti tamo. Treba obaviti recenzije koda. Bugovi automatizacije trebaju se prijavljivati u spremištu bugova. Izvorni kod automatizacije treba staviti pod kontrolu izvora, itd. Što se više ponašate kao prema razvoju softvera, to će automatizacija biti uspješnija.
Zaključak
Ovo sažima članak, kao i seriju automatizacija ispitivanja. Mnogo sam naučio tijekom pisanja ovih vodiča i nadam se da ćete i vi naučiti čitajući. Automatizacija testa zanimljiva je i korisna karijera. Ispravno postupanje nije korisno samo za vas već i za organizaciju.
Svakodnevno radeći na automatizaciji ispitivanja i njezinim tehnikama pronalazim nove i zanimljive izazove koje moram riješiti. Ova je serija bila pokušaj da se naglasi što bi se moglo naići na putovanju automatizacije ispitivanja. Nadam se da sam ga isporučio ispravno i na jednostavan način.
Kao i uvijek, čekam vaše komentare i prijedloge. Slobodno napišite svoje povratne informacije u odjeljak za komentare. Bit će mi drago čuti vas i pomoći vam ako zatreba. Hvala na čitanju.
PREV Vodič br. 6
Preporučena literatura
- Jeste li stručnjak za ručno ili automatizirano testiranje? Radite skraćeno za nas!
- Izazovi ručnog i automatiziranog ispitivanja
- Top 10+ najboljih knjiga za testiranje softvera (knjige za ručno testiranje i automatizaciju)
- Sikuli GUI alat za automatizaciju - Vodič za početnike, dio 2
- Vodič korak po korak za primjenu dokaza o konceptu (POC) u ispitivanju automatizacije
- Proces automatskog testiranja u 10 koraka: kako započeti automatsko testiranje u svojoj organizaciji
- Kako odlučiti koja je vrsta testiranja potrebna za projekt? - Ručno ili automatizacija
- Kako izvršiti ručno ispitivanje performansi?