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 razumio/-jela zahtjeve i dizajnirao/-la automatizovane test case-ove koji simuliraju različite scenarije u igri. Koristeći svoje programske vještine i stručnost u okviru testiranja, treba da identifikuje i riješ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 neprimjetno integriše sa cjelokupnim procesom razvoja, pružajući brz feedback o promjenama 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.

VirtualBox

Alati

Jira

TestRail

Selenium

JMeter

Git

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 cjelokupni ciklus razvoja. Redovna komunikacija sa programerima je neophodna za brzo rješ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), obezbjeđujući pojednostavljen i automatizovan proces za objavljivanje novih verzija igre.

Vještine

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

Hard skills

  • Vješ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.
  • Razumijevanje razvoja igara
    • Razumijevanje mehanike i interakcije korisnika i grafičkih elemenata služi za razvoj scenarije testiranja koji oponašaju igranje u stvarnom svijetu.

Soft skills

  • Komunikacija
    • Prenosi složene tehničke informacije i tehničkim i netehničkim članovima tima, izvješ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 zahtjeve 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 promjenama u zahtjevima 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 sljedeće stvari:

Junior

  • Brzo shvata i primjenjuje 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 smjernice kada je to potrebno, dijeli uvide i doprinosi diskusijama o strategijama i pristupima testiranju.
  • Temeljno razumije 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, obezbjeđ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 vještine, analizira logove, identifikuje osnovne uzroke problema i pruža informacije koje će pomoći developerima u rješavanju problema.
  • Mentor/-ka je juniorima, dijeli znanje i pruža smjernice o najboljim praksama, aktivno doprinosi rastu tima i vodi trening sesije.

Senior

  • Projektuje framework-ove za automatizaciju, kreira skalabilne i održive strukture, dobro razumije principe dizajna softvera i najbolje prakse testiranja.
  • Obezbjeđ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 obezbjeđuje da se automatizovano testiranje neprimjetno integriše u pipeline.
  • Ekspert je u svojoj oblasti, pruža smjernice 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

Ako si zainteresovan/-a za karijeru u testiranju video-igara, formalno obrazovanje u oblasti testiranja softvera, osiguranja kvaliteta ili razvoja video-igara može ti biti od koristi. Razmisli o upisu na kurseve ili obrazovne programe koji pokrivaju metodologije testiranja softvera, alate za praćenje grešaka i prakse osiguranja kvaliteta. Razumijevanje osnova gejm dizajna, programiranja i arta pružiće ti dragocjen kontekst i uvid u proces razvoja igara. Potraži programe koji nude praktično iskustvo u testiranju softvera i igara, jer je praktična obuka neophodna za razvoj kritičnih vještina potrebnih za ove uloge.

 

Pored formalnog obrazovanja, sticanje praktičnog iskustva putem praksi ili entry pozicija može biti odličan put ka ulasku u industriju. Učešće u programima beta testiranja ili doprinos nezavisnim projektima, takođe, može ti pružiti relevantno iskustvo i pomoći ti da izgradiš portfolio. Umrežavanje sa profesionalcima u industriji, bilo putem onlajn zajednica ili industrijskih događaja, može ti pružiti prilike za učenje od iskusnih testera i sticanje uvida u očekivanja i zahtjeve industrije. Posvećivanje velike pažnje detaljima, odlične vještine  komunikacije i strast za gejmingom biće ključni faktori da se zaposliš na poziciji u ovoj oblasti.

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

TEST AUTOMATION ENGINEER // GAME TESTING //
TEST AUTOMATION ENGINEER // GAME TESTING //