Wednesday, Sep 20, 2023
QA praksa: Prilika za učenje i razvijanje vještina u testiranju softvera
Drugu godinu zaredom, a ponovno pod vodstvom naše testerice, Ivane Ćosić, u Monu se održala studentska QA praksa. Dok je većina naših developerskih praksi usmjerena na tehničke fakultete, i ove smo se godine odlučili održati QA praksu za studente Filozofskoga fakulteta u Osijeku, odnosno Odsjeka za informacijske znanosti.
Odabirom Filozofskoga fakulteta želja nam je bila potaknuti i studente drugih fakulteta te im pokazati da i oni mogu odabrati karijeru u IT-ju.
Tako je na svoj put otkrivanja bugova i testiranja softvera krenulo četvero studenata druge godine diplomskoga studija Informacijske tehnologije, u sklopu svoje stručne prakse. Tijekom dva mjeseca s nama su bili Mislav Garić, Laura Lišnić, Filip Mudri i Dajana Radić, a u nastavku nam otkrivaju što su sve novo naučili (i jesu li u QA-ju možda pronašli svoj životni poziv!).
Ipak, prije nego čujemo njihove dojmove, želimo i od Ivane čuti što su to točno studenti imali priliku raditi, koje su tehnologije koristili, ali i zašto su baš oni odabrani za ovu praksu.
Ivana, ti si single-handedly pokrenula i organizirala ovu praksu. Što te na to potaknulo? Zašto si se odlučila baš odabrati studente FFOS-a? Hoće li se u budućnosti praksa širiti i na druge fakultete?
Da, istina je da sam ja single-handedly pokrenula i organizirala ovu praksu. Kao osoba koja radi u QA industriji, uvijek sam smatrala da postoji velika potreba za edukacijom mladih ljudi o tome što je QA i kako se QA radi. Osim toga, željela sam pružiti priliku studentima FFOS-a da steknu praktična iskustva i znanja u ovom području te se bolje pripreme za svoju buduću karijeru.
Odabrala sam studente FFOS-a jer su FFOS-ovi studenti većinom usmjereni prema IT sektoru, a QA industrija je važan dio IT sektora. Također, FFOS ima dobru reputaciju u području računalnih znanosti, pa sam smatrala da će ovaj program biti dobro prihvaćen na tom fakultetu.
U budućnosti bih voljela da se praksa proširi i na druge fakultete jer vjerujem da bi bilo korisno i za studente drugih fakulteta, kao i za IT industriju općenito. Također, praksa bi bila otvorena i dobrodošla za sve ostale zainteresirane osobe koje možda nisu fakultetski potkovane, a zainteresirane su za IT sektor i pronalaze se u tom području.
Za naše buduće praktikante koje bi to moglo zanimati, što se na ovoj praksi sve radilo? Koji je bio plan i proces učenja? Što ste testirali? Koje ste tehnologije koristili?
Na ovoj praksi studenti su imali priliku naučiti o osnovnim konceptima QA-ja, o tome kako se stvaraju test caseovi, kako se koriste testni alati te kako se pišu izvještaji o testiranju, odnosno bug reporti. Također smo obrađivali teme poput automatizacije testiranja, performansi, sigurnosti i upravljanja projektima.
Plan i proces učenja se sastojao od teorijskog i praktičnog znanja. Studenti su prva 3 tjedna imali priliku proći osnove teorijskog koncepta QA-ja, osnovne pojmove, vrste testiranja, prakse testiranja i metode i postupke različitih vrsta testiranja. Nakon teorijskog dijela, krenuli su s praktičnim dijelom u kojem su sve ono teorijsko primijenili u praktično; od pisanja dokumentacije do automatskog testiranja.
U sklopu prakse smo testirali web aplikacije i simulirali mobilne uređaje koristeći različite tehnologije i alate poput Cypressa i Seleniuma.
Jesi li se ti oduvijek zamišljala u QA-ju? Kako si ti došla do svoje pozicije? Imaš li poruku za one koji su možda neodlučni, ili poruku kojom bi potaknula druge da se i oni odluče za QA?
Od početka studija sam se zamišljala u IT industriji, jako mi se sviđa radna atmosfera, dinamički posao i izazovi koji su neizbježni u IT-ju, ali specifično i u QA-ju. Nakon završetka faksa sam se počela sama educirati u području QA-ja. Za Mono sam čula već na početku studija, tako da mi nije bilo teško odlučiti se za potencijalnu firmu u kojoj bih se vidjela te u kojoj bih mogla učiti i napredovati iz dana u dan.
Za one koji su možda neodlučni ili se još nisu odlučili za QA industriju smatram da QA ima važnu ulogu u IT industriji. QA pomaže u osiguravanju kvalitete proizvoda, čime se štedi vrijeme i novac tvrtke i korisnika.
Također, QA industrija je vrlo dinamična i uvijek se mijenja, što znači da uvijek postoji prilika za učenje i napredovanje.
Dalje čitamo i što kažu studenti…
1. Za početak, kakvo je bilo vaše prijašnje iskustvo s testiranjem? Jeste li imali prethodno praktično znanje, ili je to bilo samo teorijsko znanje?
Mislav: S obzirom na to da smo imali kolegij na 5. godini koji se bavio testiranjem, imao sam predodžbu o čemu se radi, iako sam tek ovdje na praksi stekao bolji uvid u manualno te osnove automatskog testiranja.
Laura: Na četvrtoj godini studija imali smo stručni razgovor u sklopu kolegija na kojem sam se prvi put suočila s manualnim testiranjem. Zadatak mi je bio end-to-end testirati web aplikaciju koju koristimo za evidenciju dolazaka na nastavu. Tada je počelo moje zanimanje za QA te sam nastavila istraživati. Na petoj smo godini imali kolegij gdje smo se upoznali s WebDriverIO frameworkom na kojem smo se dotakli automatiziranog testiranja, no ova praksa pružila je sasvim novi pogled uz pomoć korištenja Cypressa i Seleniuma.
2. Kako ste prije ove prakse doživljavali ulogu softver testera u razvoju softvera? Je li se vaš dojam i shvaćanje ove pozicije i njezine važnosti promijenio?
Filip: Prije prakse ulogu softver testera doživljavao sam kao i ulogu testera svakog drugog proizvoda. Njihov rad nije krucijalan za puštanje u promet određenog proizvoda ili usluge, ali jako dobro dođe ako je cilj da software bude spreman i iskoristiv od prvog dana njegovog korištenja. Moje shvaćanje ove pozicije promijenilo se u vidu količine posla, odnosno količine testiranja koju jedan tester obavi. Naime, mislio sam da se aplikacija testira na kraju razvojnog procesa te da se prolaze one značajke za koje se očekuje da će ih i korisnik reproducirati. Međutim, testira se znatno više od toga, što smatram pozitivnom stavkom jer je gotovo nemoguće predvidjeti ponašanje svakog korisnika pa je detaljnije testiranje svakako bolje.
Dajana: Prije nego sam se susrela s tim područjem, nisam ga smatrala nešto previše bitnim, mislila sam da je to uloga koja je tu kao dodatna potvrda kvalitete softvera, ali da se bez tog može. Od neposrednog boravka u svojoj firmi gdje sam na internshipu, još prije Mona, prvi sam se put susrela s time kako su mi developeri govorili da je moja pozicija jako bitna za softver i tu sam po prvi put dobila dojam kako je percepcija pozicije QA inženjera u razvoju softvera od velike važnosti za zrelost procesa, te da se jedan softver ne može nazvati dobrim ako nema QA podršku i da se jedan tim ne može nazvati agilnim ako nema testera u njemu.
3. Koja su bila vaša očekivanja za ovu praksu? Je li se ona odvijala onako kako ste očekivali ili vam je cijelo iskustvo bilo potpuno novo?
Mislav: Meni je ovo iskustvo bilo potpuno novo pošto mi je ovo bila prva praksa, tako da nisam znao što točno očekivati, ali svakako sam očekivao da ću nešto novo i korisno naučiti, što se na kraju i ostvarilo. Ovdje bih morao svakako istaknuti našu QA mamu Ivanu koja nam je bila dostupna za pomoć i za vrijeme i izvan radnog vremena te nam je uvelike pomogla tijekom naše prakse.
Filip: Jedina očekivanja od prakse koja sam imao bila su da ću naučiti nešto novo i dobiti bolji uvid u proces razvoja aplikacije što se i dogodilo. Na praksi smo prošli tehnologije s kojima se nisam do sada susreo, a koje se koriste u mnogim područjima što će zasigurno dobro doći u daljnjem učenju QA vještine.
4. Što biste poručili ostalim studentima da se odluče na odrađivanje QA prakse? Što je vas, kao studente, potaknulo da se prijavite na ovakvu vrstu prakse i napravite korak naprijed u unapređivanju svojih znanja i vještina u QA-ju?
Laura: Svakome tko ima oko za detalje, a usput je pedantan i barata informacijskim tehnologijama, no ne pronalazi se u čistom developmentu, preporučila bih praksu u području testiranja. Praksu u ovom području sam najprije željela pohađati zato što me ono iznimno interesira i vidim se u tome poslu. Mislim da je praksa dobar način za saznati jesmo li sposobni u nekom području i isto tako popraviti ono u čemu griješimo uz nadzor mentora. Smatram da je praksa prekretnica između fakulteta i zaposlenja nakon što dobijemo diplome. Fakultet pruža teoriju i osnove, na praksi naučimo, a kasnije možemo doprinijeti razvoju tvrtke na što kvalitetniji način.
Dajana: QA je zahvalno i traženo područje, a inicijalna misao mi je bila idem vidjeti pronalazim li se u tom području. Kako sam radila s alatima i manualno testirala sve više mi se sviđala ta premisa pronalaska bugova, defekata i ukazivanja na propuste softvera da bi se isti popravili. Automatizirano testiranje je posebno bilo zanimljivo jer je “cherry on top” testiranja u smislu da u onom što voliš raditi svakako, još koristiš i znanja iz programiranja. QA je otprilike i dobar način da si digneš samopouzdanje u IT-ju kao početnik.
5. Nakon što ste prvih tjedana prošli teorijski dio, je li vam bilo zahtjevno taj teorijski dio prenijeti u praksu? Koji vam je dio bio najkompleksniji?
Dajana: Nije bilo teško pronaći literaturu i opisati to, prvo samoj sebi pa zatim sastaviti u smislenu cjelinu. Imali smo pomoć mentorice Ivane pa je sve bilo lagano.
Filip: Teorijski dio bio je, meni barem, znatno lakši od praktičnog dijela. Praktični dio zahtijevao je prethodnu organizaciju i stvaranje plana testiranja što nisam znao na početku, a što je kasnije uzrokovalo znatne organizacijske probleme. Najkompleksniji dio bio je uspostava radne okoline, pisanje dokumentacije te organiziranje testova po smislenim poglavljima. Srećom, kao što je Dajana spomenula, imali smo veliku pomoć mentorice Ivane pa su te stvari tekle puno lakše nego da smo samostalno radili.
6. Koje sve vještine i znanja ste stekli u tijeku ove prakse? Smatrate li da će vam to biti korisno kada u budućnosti budete tražili stalni posao?
Mislav: Pisanje test caseova, bug report, raspisivanje dokumentacije, pisanje osnovnih automatskih testova u JavaScriptu i C#, a što se tiče vještina stekao sam bolje oko za detalje, pronalaženje jednostavnih i kompleksnih problema, način prijavljivanja bugova i dizajn problema. Smatram da je ova praksa prvi veliki korak prema ostalim praksama, studentskim poslovima ili stalnim zaposlenjem s obzirom na to da je rijetkost danas dobiti posao bez prijašnjih iskustva u IT-ju.
Laura: Služenje drugim platformama poput Cypressa, razvoj kritičkog promišljanja kako dokumentirati bug koji se pojavio samo jednom, pisanje test caseova na što detaljniji način, kao i opis buga. Smatram da će ova praksa sigurno otvoriti mnoga vrata budući da smo vrlo veliku količinu literature i dokumentacije prošli skroz do detalja, a zatim ju i primijenili. Smatram da praksa pomaže studentu da nešto konkretno nauči kako bi na kraju imali sve potrebne vještine za kvalitetno obavljanje posla.
7. Što smatrate da su osnovne kvalitete koje osoba treba imati da bi dobro obavljala posao testera?
Mislav: Oko za detalje, snalažljivost, brzo i efikasno rješavanje problema, dobar i jasan način pisanja dokumentacije, dobra komunikacija i timski rad.
Dajana: Oko za detalj i znatiželju. Možda i tvrdoglavost, da si zamisliš da tu postoji bug i želiš ga naći i ne staješ dok ga ne nađeš. Dakle, mentalitet da je aplikacija već pokidana, samo to treba otkriti. Također, možda i najbitnija stvar je komunikacija u timu i razumijevanje poslovne psihologije. Testerima je posao da budu nositelji loših vijesti i bitno je znati kako nekome reći da ima problem u kodu. To ovisi o karakterima, ali ljudi to nekad shvate osobno, kao da oni ne valjaju i njihov posao ne valja, no bitno je postaviti čvrst temelj da to nije tako, da zajedno radimo ka tome da proizvod bude na nivou i da si pomažemo međusobno.
8. Za kraj, možete li se zamisliti u ovoj karijeri? Biste li voljeli nastaviti s učenjem te se i dalje baviti testiranjem?
Laura: Vidim se u karijeri testera. Paralelno s praksom učim i sama te planiram proći kroz još velik broj tečajeva kako bih mogla što bolje odraditi posao i kako ne bi zapinjala pri svakom malo težem zadatku. Smatram da se u IT struci učenje nikad potpuno ne završava, već zaposlenici koji žele i dalje biti kompetentni trebaju redovno usavršavati svoje znanje, prolaziti tečajeve, posjećivati konferencije i pratiti sve nove generacije koje dolaze s jednakim ili bolje razvijenim vještinama.
Filip: Iako karijera QA testera zvuči vrlo primamljivo, a znanja i vještine koje QA tester posjeduje i razvije vrlo korisna, ipak se više vidim u karijeri developmenta zbog dinamičnije radne okoline. S učenjem bih svakako volio nastaviti jer nijedno znanje nije beskorisno i sve se može primijeniti negdje.
Želiš postati softver tester u Monu?
Ako su vas ova iskustva motivirala da i sami postanete softver tester, ali nedostaje vam praktičnog iskustva, pa možda i početnoga teorijskog znanja, a ne znate odakle krenuti, Mono starter kit uvijek je dostupan za sve - ili kao početni korak u vašem razvoju, ili kao pomoć u usavršavanju.
Kako bez softver testera nema kvalitetnog softvera, tako u Monu uvijek tražimo iskusne testere koji će nam pomoći u tome da osiguramo vrhunsku kvalitetu softvera koje izrađujemo. Misliš da si baš ti osoba koju tražimo? Javi nam se!