O značaju koji Quality Assurance Testing ima za stvaranje svakog softverskog proizvoda ili usluge, napisani su brojni odlični tekstovi. Jedan proizvođač softvera ne bi dugo opstao na tržištu bez dobrih testera koji se staraju da proizvod ili usluga te kompanije stignu do krajnjeg korisnika bez defekata koji bi pokvarili njihovo korisničko iskustvo. Zbog toga poslodavci posebnu pažnju obraćaju kod angažovanja novih QA testera, koji će se postarati da posle njihovog rada 99,99% mogućih bagova u softveru bude otklonjeno.
Usled specifičnosti i odgovornosti pozicije QA testera unutar strukture poslovne organizacije, puno je istraživanja, knjiga i članaka posvećeno tipu ličnosti, sposobnostima, veštinama i znanjima neophodnim za uspešno vršenje ovog posla. Na osnovu uvida u pomenutu literaturu, ustanovili smo postojanje velikog broja različitih ili preklapajućih mišljenja i zato smo se potrudili da izdvojimo 7 primarnih osobina oko kojih se slažu svi relevantni stručnjaci iz teorije i prakse.
Pri čitanju ovog teksta važno je da ne zaboraviš da navedene osobine uglavnom nisu one sa kojima se čovek rađa, već se iste stiču kroz život, učenje i rad. Ako smatraš da neku od njih ne poseduješ u dovoljnoj meri, nemoj da se obeshrabriš, već se potrudi da je razviješ što pre i što više. Sada kada smo te pripremili za dalje čitanje, možemo početi.
QA tester je osoba koja u komunikaciji sa kolegama često mora da naglasi šta je to što ne valja, gde su napravljene greške, propusti, i da ukaže na prostor u kojem je moguće postići napredak u odnosu na postojeća rešenja. S obzirom da su i tvoje kolege ljudi kojima ne prija uvek da čuju kritiku svog rada, razmišljanja, pristupa ili ideje – tu u igru ulazi testerova veština konstruktivnog komuniciranja.
Dobra komunikacija podrazumeva da pažljivo saslušaš sagovornika, formiraš odgovor u glavi, isprobaš ga jednom u sebi, prilagodiš ton situaciji u kojoj se nalaziš i tek tada izneseš svoje mišljenje. Predstaviti sopstveno stanovište koje je suprotno od koleginog, bez stvaranja osećaja da se radi o napadu na ličnost te osobe, jeste jako važno, naročito kada imamo u vidu da je ovo situacija u kojoj se tester nalazi svakodnevno. Neki ljudi veštinu komuniciranja imaju ugrađenu u sebi, dok većina ipak mora da je razvija tokom školovanja i u poslovnoj praksi.
Isto važi i za sposobnost uspešnog pregovaranja, o čemu su napisane brojne knjige. Pregovaranje je još jedan deo testerove svakodnevnice. Kako su dizajneri u pojedinim situacijama spremni da do kraja brane svoja završena rešenja, tester je tu da im objasni širi kontekst u kojem se rad svakog pojedinog dizajnera obavlja, što nije ni malo lak zadatak. I sve to imajući u vidu dizajnerov integritet i lična osećanja. Jedna od korisnih tehnika u vezi sa komuniciranjem tiče se insistiranja na (ostajanju na) temi, bez dopuštanja da se razgovor raspline na više manje ili više povezanih tema i tako izgubi poentu. Dakle, budite precizni.
Još jedna osobina sa kojom se ljudi rađaju u manjoj ili većoj meri, ali tokom vremena je mogu razviti do optimalnog nivoa potrebnog da se bude vrhunski QA tester – jeste preciznost. Od osobe na zadatku otklanjanja bagova iz proizvoda se uvek očekuje uspeh – što znači potpuno eliminisanje svih bagova iz usluge ili proizvoda. Naravno, u praksi je ovo nemoguće, te ti na samom početku kažemo da kao tester nikada ne obećaš stopostotnu pokrivenost proizvoda testom. Vodi se geslom: “Obećaj što manje, isporuči što više!”
Ako već rezultat od sto procenata nije nešto što je ostvarivo, onda je cifra od 99% pokrivenosti ona kojoj tester treba da teži. Dobar Quality Assurance Tester je temeljan u svom poslu i trudi se da svaki aspekt svakog dizajnerovog rešenja bude doveden u pitanje pre nego što ga odobri. Ovo je jako važno jer je testiranje ujedno i poslednja faza životnog ciklusa u razvoju softvera. Posle testiranja više nema nazad.
Preciznost je važna i kod pisanja izveštaja i poštovanja postavljenih rokova. Ova osobina pomaže da se izbegnu viši troškovi ispravljanja nedostataka ili duži periodi odlaganja, tokom poslednje faze proizvodnog ciklusa, neposredno pre puštanja proizvoda na tržište, što je od velike važnosti za svaku kompaniju.
Da bi dobro razumeo složene zahteve koji su stavljeni pred njega, povratne informacije svojih kolega iz business i tehničkog domena, kao i klijenata, definisao strategiju testiranja, stekao tačan uvid u brojne situacije u kojima postoje nerešeni problemi, izgradio pametna test rešenja, razumeo veliki broj različitih podataka koje je sakupio – tester treba da bude osoba obdarena analitičkim i logičkim sposobnostima i znanjima.
Tester mora da bude sposoban da razmišlja “iza” onoga što su do tog trenutka pretpostavljali dizajneri i menadžeri poslovnog projekta. On ili ona mora da bude sposoban(na) da razvija scenarije mogućih ponašanja korisnika, koji do tada nisu padali na pamet ostalim kolegama. I tu dolazimo do sledeće važne osobenosti vrhunskog testera, a to je sposobnost da se staviš u tuđu (korisnikovu) kožu. Više o ovome, kao i o preostale četiri osobine potrebne da se kvalitetom svoga rada izdvojiš od većine, možeš da pročitaš u drugom delu bloga: “Šta čini vrhunskog QA testera? (2)”.