Test Automation Engineer

Inženjer/-ka za automatizaciju testova je odgovoran/-a za razvoj i implementaciju automatizovanih procesa testiranja u razvoju video-igara. Primarni cilj mu/joj je da poboljša efikasnost QA procedura kreiranjem automatizovanih skripti i alata za validaciju funkcionalnosti, performansi i stabilnosti video-igre. Blisko sarađuje sa developerima kako bi razumeo/-la zahteve i dizajnirao/-la automatizovane test case-ove koji simuliraju različite scenarije u igri. Koristeći svoje programske veštine i stručnost u okviru testiranja, treba da identifikuje i reši potencijalne bagove, glitch-eve ili probleme sa performansama u ranoj fazi razvojnog ciklusa, doprinoseći ukupnom poboljšanju kvaliteta igre.

Pored dizajniranja i izvođenja automatizovanih testova, inženjer/-ka za automatizaciju testova često igra ključnu ulogu u kontinuiranoj integraciji i isporuci (CI/CD) pipeline-a. Radi na uspostavljanju automatizovanog okruženja za testiranje koje se neprimetno integriše sa celokupnim procesom razvoja, pružajući brz feedback o promenama u bazi koda igre. Ovakav proaktivni pristup pomaže u održavanju stabilnog i pouzdanog iskustva igranja i osigurava da konačni proizvod ispunjava standarde visokog kvaliteta i da nema kritičnih problema koji bi mogli uticati na zadovoljstvo korisnika.

Alati

Jira

TestRail

Selenium

JMeter

Git

VirtualBox

PlayStation SDK

Wireshark

Crucible

Saradnja sa drugim timovima

Inženjer/-ka za automatizaciju testova blisko sarađuje sa različitim ulogama u development timu kako bi osigurao/-la besprekornu integraciju procesa automatizovanog testiranja u celokupni ciklus razvoja. Redovna komunikacija sa programerima je neophodna za brzo rešavanje svih problema otkrivenih tokom testiranja. Zajednički napori osiguravaju da konačni proizvod ne samo da ispunjava specifikacije dizajna, već i pouzdano radi na različitim platformama.

Inženjer/-ka za automatizaciju testiranja blisko sarađuju sa QA sektorom, uključujući manualne testere i QA Lead-ove, kako bi uskladili strategije testiranja. Automatizacija dopunjuje napore manuelnog testiranja, omogućavajući efikasno izvršavanje ponavljajućih i dugotrajnih test case-ova, dok se manuelno testiranje može fokusirati na aspekte istraživanja korisničkog iskustva. Sinergija između automatskog i manuelnog testiranja pomaže u postizanju sveobuhvatne pokrivenosti testom, identifikuje i funkcionalne i nefunkcionalne probleme, i na kraju pruža krajnjim korisnicima kvalitetno iskustvo igranja. Pored toga, saradnja sa DevOps-om i Release inženjerima je ključna za integraciju automatskog testiranja u pipeline kontinuirane integracije i isporuke (CI/CD), obezbeđujući pojednostavljen i automatizovan proces za objavljivanje novih verzija igre.

Veštine

U zavisnosti od senioriteta, od Inženjera/-ke za automatizaciju testova se očekuje da može da savlada, uradi i isporuči sledeće stvari:

Hard skills

  • Veštine programiranja i pisanja skripti: znanje programskih jezika je potrebno za razvoj i održavanje automatizovanih test skripti. 
  • Framework i alati za testiranje: vladanje alatima omogućava dizajniraje test suit-ova koji potvrđuju karakteristike, performanse i stabilnost igre.
  • Razumevanje razvoja igara: razumevanje mehanike i interakcije korisnika i grafičkih elemenata služi za razvoj scenarije testiranja koji oponašaju igranje u stvarnom svetu.

Soft skills

  • Komunikacija: prenosi složene tehničke informacije i tehničkim i netehničkim članovima tima, izveštava ih o problemima i sa njima diskutuje o strategijama testiranja.
  • Analitičko razmišljanje: analizira gejm dizajn dokumenate, korisničke priče i funkcionalne zahteve kako bi identifikovao/-la potencijalne oblasti rizika.
  • Prilagodljivost i kontinuirano učenje: otvoren/-a je za učenje kako bi bio/-la u toku sa trendovima u industriji, prilagođava se promenama u zahtevima projekta.

Senioritet

U zavisnosti od senioriteta, od Inženjera/-ke za automatizaciju testova se očekuje da može da savlada, uradi i isporuči sledeće stvari:

Junior

  • Brzo shvata i primenjuje alate i framework-ove za testiranje koji se obično koriste u industriji i koristi ih za kreiranje i izvršavanje test skripti.
  • Efikasno komunicira i spreman/-a je da uči od drugih, traži smernice kada je to potrebno, deli uvide i doprinosi diskusijama o strategijama i pristupima testiranju.
  • Temeljno razume programske i skriptne jezika relevantnih za automatizaciju testiranja, u stanju je da piše osnovne skripte i postepeno poboljšava svoje znanje kodiranja.
  • Ima oko za detalje prilikom dizajniranja i izvođenja test case-ova, identifikuje, dokumentuje i efikasno komunicira probleme, kritički ih promišlja.

Medior

  • Napredno kreira i održava složene test skripte, dizajnira automatizovane test suit-ove koji pokrivaju širok spektar scenarija, obezbeđujući temeljno testiranje funkcionalnosti.
  • Aktivno doprinosi razvoju i usavršavanju strategija i planova testiranja, identifikuje prioritete testiranja, definiše ciljevi automatizacije i integriše ih u procese razvoja.
  • Ima odlične debugging i troubleshooting veštine, analizira logove, identifikuje osnovne uzroke problema i pruža informacije koje će pomoći developerima u rešavanju problema.
  • Mentor/-ka je juniorima, deli znanje i pruža smernice o najboljim praksama, aktivno doprinosi rastu tima i vodi trening sesije.

Senior

  • Projektuje framework-ove za automatizaciju, kreira skalabilne i održive strukture, dobro razume principe dizajna softvera i najbolje prakse testiranja.
  • Obezbeđuje strateško vođstvo u oblikovanju procesa testiranja, sarađuje sa drugim timovima radi uspostavljanja dugoročnih ciljeva testiranja i definisanja metrika kvaliteta.
  • Igra ključnu ulogu u implementaciji i optimizaciji CI/CD praksi i obezbeđuje da se automatizovano testiranje neprimetno integriše u pipeline.
  • Ekspert je u svojoj oblasti, pruža smernice ne samo unutar svog tima, već i drugih, mentoriše, vodi trening sesija i u toku je sa novim trendovima i tehnologijama.
TEST AUTOMATION ENGINEER // GAME TESTING //
TEST AUTOMATION ENGINEER // GAME TESTING //

Obrazovanje

Za sektor gejm testinga u gejming industriji, preporučuje se završetak srednje škole s fokusom na računarstvo. Univerzitetski stepen u računarskim naukama ili srodnom polju može pružiti temeljnu teorijsku osnovu. Pored toga, pohađanje specifičnih kurseva o testiranju softvera ili gejming industriji dodatno razvija potrebne veštine.

Važno je sticanje praktičnog iskustva kroz rad na projektima i volontiranje u gejming kompanijama. Mreženje s profesionalcima iz industrije, prisustvovanje konferencijama i aktivno učešće u gejming zajednicama dopunjuju obrazovni put, omogućavajući kandidatima da izgrade uspešnu karijeru u gejm testiranju.

Resursi

Knjige

  • „Selenium WebDriver: From Foundations to Framework“ – Yujun Liang
  • „Appium Essentials“ – Manoj Hans
  • „Java For Testers“ – Alan Richardson
  • „Continuous Delivery“ – Jez Humble, David Farley
  • „The Art of Unit Testing: with Examples in .NET“ – Roy Osherove

Pojedinci

  • Angie Jones (@techgirl1908)
  • Joe Colantonio (@jcolantonio)
  • Simon Stewart (@shs96c)
  • Mark Winteringham (@2bittester)
  • Alan Richardson (@eviltester)

Kako izgleda intervju za ovu poziciju?

Novosti

Ako te interesuje koncept art, ovo je prilika koju ne treba propustiti!
Uskoro se otvaraju prijave za besplatne Prop i Environment kurseve u Onyx akademiji!
Razgovarali smo sa preko 20 seniora u domaćem gejmingu. Kad pogledaš ovih šest epizoda trebalo bi da ti bude mnogo jasnije čime u gejmingu možeš i želiš da se baviš
TEST AUTOMATION ENGINEER // GAME TESTING //
TEST AUTOMATION ENGINEER // GAME TESTING //