Skip to content

Šta sve treba da zna
QA tester?

Već smo videli koje su to osobine i sklonosti koje bi idealno trebalo da ima jedan tester softvera, ali one naravno nisu same po sebi dovoljne da bi neko bio uspešan u ovom poslu.

Postoji širok dijapazon znanja koja su neophodna svakom QA stručnjaku i na kojima može dalje da gradi i razvija svoju karijeru. U ovom tekstu, pokušaćemo da pobrojimo one najvažnije.

1. Osnove IT-ja

Razumevanje osnovnih pojmova u informacionim tehnologijama je ključno za svakog testera softvera. Ovo uključuje poznavanje osnovnih komponenti računarskih sistema, mrežnih protokola, operativnih sistema i principa njihove međusobne interakcije.

Ova znanja su neophodna za razumevanje konteksta u kom softver funkcioniše i služe kao temelj drugim tehničkim znanjima koje budući QA stručnjak treba da stekne. Takođe im i omogućava da identifikuju i razumeju probleme koji se mogu pojaviti u softverskoj infrastrukturi  i olakšava komunikaciju sa tehničkim timovima.

2. Životni ciklus softvera (SDLC)

Životni ciklus softvera (SDLC) obuhvata sve faze razvoja softvera, od početne ideje do lansiranja, održavanja i podrške. Poznavanje SDLC-a pomaže testerima da shvate principe procesa razvoja, ali i mesto i ulogu testiranja u tom procesu.

Različite metodologije, poput Agile-a i Waterfall-a, definišu strukturu i pristup koji timovi koriste. Razumevanje ovih metodologija omogućava testerima da sagledaju razvojni ciklus iz različitih uglova i da se na svom budućem poslu efikasno prilagode različitim načinima rada.

mladi-ljudi-uce-testiranje-ispred-racunara

3. Osnovni pojmovi testiranja

Osnovni pojmovi testiranja, kao što su test case, test plan, test scenario, okruženje, bag, defekt, validacija, verifikacija i slično, predstavljaju fundamente koje svaki tester treba da razume. Dobro poznavanje ovih i sličnih pojmova je neophodno i pruža osnovu za dalje učenje i razumevanje testerskog posla i uloge.

Za buduće QA profesionalce je neophodno da dobro savladaju ove koncepte, kako bi mogli precizno da identifikuju i dokumentuju probleme, organizuju i sprovode testne aktivnosti, ali i komuniciraju sa ostatkom tima i drugim zainteresovanim stranama.

4. Vrste, nivoi i tehnike testiranja

Postoje brojne vrste testiranja i brojni načini da se testiranje podeli na vrste (npr. funkcionalno i nefunkcionalno ili manuelno i automatsko), kao i različitih test nivoa (kao što su unit, integraciono ili sistemsko testiranje), i za QA stručnjaka je ključno da poznaje njihove osnovne odlike i razlike.

Svaka vrsta i nivo testiranja ima specifičnu ulogu u osiguravanju kvaliteta softvera. Poznavanje ovih razlika u teoriji i praksi omogućava testerima da ciljano primenjuju odgovarajuće tehnike. Za to je naravno potrebno i da je tester dobro upoznat sa različitim tehnikama testiranja (npr. whitebox, blackbox ili exploratory testiranje) i pravilno ih odabere i primeni u zavisnosti od specifičnih zahteva projekta.

5. Testne strategije i metodologije

Testne strategije i metodologije definišu pristup i metode koje se koriste za testiranje softvera. Ove strategije uključuju izbor testnih tehnika, planiranje resursa i određivanje prioriteta testiranja.

Efikasne testne strategije pomažu u optimizaciji resursa i vremena, omogućavajući testerima da se fokusiraju na kritične delove aplikacije. Kroz pravilno planiranje i sprovođenje testiranja, testerima se omogućava da pronađu i otklone potencijalne probleme, što za rezultat ima stabilniji i kvalitetniji softver.

6. Organizacija tima i uloga testera

Razumevanje organizacije tima i uloga unutar njega ključno je za uspešno testiranje. Efikasna timska dinamika i saradnja omogućavaju pravovremeno otkrivanje i rešavanje problema.

Poznavanje različitih rola u timu pomaže testerima da koordinišu svoje aktivnosti, ali i efikasnije komuniciraju i sarađuju sa kolegama, doprinoseći tako ukupnom uspehu projekta.

7. Test procesi

Test procesi uključuju planiranje, dizajn, izvršavanje i evaluaciju testova, koji pomažu QA ekspertima da sistematski pristupe testiranju.

Kroz definisane procese, testeri mogu da postave jasne ciljeve, razviju efikasne test planove i strategije, i analiziraju rezultate kako bi detektovali i otklonili sve probleme. Na SixCube University-ju polaznici uče kako da implementiraju standardizovane procese koji obezbeđuju konzistentnost i kvalitet u testiranju.

predavac-i-polaznik-na-qa-kursu

8. Osnove programskih jezika

Poznavanje programskih jezika generalno nije neophodno za testiranje softvera, ali poznavanje njihovih osnova i najvažnijih karakteristika, kao i ključnih pojmova u programiranju može biti vrlo korisno. Ova znanja omogućavaju testerima da razumeju strukturu koda, steknu dodatni uvid u aplikaciju koju testiraju i pišu jednostavne skripte za automatizaciju testiranja.

Razumevanje osnova programskih jezika takođe pomaže testerima da bolje sarađuju sa programerima, izbegnu nepotrebne nesporazume i generalno poboljšaju timsku komunikaciju.

9. Druga tehnička znanja

Usvajanje nekih drugih tehničkih znanja i veština, kao što su npr. rad sa bazama podataka, API protokolima, ili razumevanje web i desktop aplikacija, takođe je važno za svakog testera.

Ovo znanje omogućava testerima da razumeju kako različiti delovi softverskog sistema funkcionišu zajedno i kako se podaci prenose i obrađuju. Poznavanje osnova softverske arhitekture takođe može pomoći QA stručnjacima da brže prepoznaju potencijalne kritične tačke i razviju efikasne testne strategije.

10. Alati za testiranje

Upotreba specijalizovanih alata za testiranje je sastavni deo testerskog posla. Rad na ovim platformama omogućava testerima da prate greške i upravljaju testovima, a u slučaju alata za automatsko testiranje mogu i automatizovati ponavljajuće zadatke.

Korišćenje ovih alata u praksi pomaže budućim testerima da steknu neophodna iskustva i veštine za rad na stvarnim projektima. Zato se na SixCube University-ju studenti upoznaju sa alatima za testiranje kroz simulacije projekata, na način koji im omogućava da razumeju njihovu primenu. Cilj  naše obuke nije samo da polaznici nauče rad u jednom alatu, već da shvate logiku koja povezuje različite alate kako bi bili spremni da se lako prilagode radu na bilo kojoj tehnologiji za testiranje.

11. Praktično znanje

Poslednja, ali verovatno i najbitnija stvar koju tester treba da zna jeste kako testiranje izgleda i funkcioniše u praksi. Teorijsko znanje je izuzetno važno za QA stručnjaka i već smo videli šta sve kvalitetan tester treba da nauči od teorije, ali bez primene naučenog u praksi, neće biti u potpunosti osposobljen za posao testera.

Praktično iskustvo je ključ za postizanje kompetentnosti u testiranju softvera. Na SixCube University-ju potenciramo praktično znanje kao ključan faktor koji definiše kompetentnog testera i zato je čak 2/3 našeg kursa posvećeno praktičnoj nastavi.

Na simulacijama projekata polaznici mogu primeniti stečena znanja u stvarnim situacijama. Tu se, kroz praksu, susreću sa stvarnim izazovima i komplikacijama u razvoju softvera, što im omogućava da bolje razumeju procese testiranja, savladaju tehnike za efikasno rešavanje problema, razviju temeljan i detaljan pristup testerskom poslu, i usvoje testerski način razmišljanja i komunikacije.

Gde mogu da naučim sve to?

Naravno, spisku ovde nije kraj. Posao testera softvera zahteva stalno učenje, usavršavanje i držanje koraka sa najnovijim tehnologijama.

Sva znanja koja smo pobrojali u tekstu, i mnogo mnogo više, možeš steći na kursu SixCube University-ja. Naš QA kurs pruža ti baš sve što ti je potrebno da s puno znanja i samopouzdanja započneš karijeru testera softvera i budeš važan šraf u timu na bilo kom projektu.

VIše o samom kursu i procesu prijave možeš saznati na ovom linku.