Inženjer za testiranje softvera obično je odgovoran za testiranje novog računalnog softvera ili programa prije nego što se proizvod proda potrošačima kako bi se osiguralo da ispravno radi, da obavlja željene funkcije i da nema nedostataka. Ovi računalni stručnjaci obično dizajniraju i provode testove, ocjenjuju rezultate i daju preporuke na temelju konačnih zaključaka. Često rade kao dio tima za osiguranje kvalitete i surađuju s drugim osobljem za osiguranje kvalitete kao što su računalni programeri.
Inženjer za testiranje softvera uključen je u više faza procesa razvoja, budući da se novi proizvodi moraju kontinuirano testirati u različitim fazama kako bi se problemi mogli brzo pronaći i popraviti. Novi softver obično se testira tijekom nekoliko razvojnih faza uključujući dizajn, programiranje, instalaciju i održavanje. Inženjeri za testiranje softvera pokušavaju simulirati mnogo različitih scenarija korištenja kako bi utvrdili radi li softver kako je predviđeno. Oni posebno provjeravaju da li softver točno izvršava funkcije za koje je dizajniran i izvodi li ih na pouzdan, dosljedan način bez ikakvih većih poteškoća. Također testiraju probleme s internetskom sigurnošću.
Dvije su osnovne točke gledišta koje inženjer za testiranje softvera koristi tijekom testiranja nazvano testiranje bijele i crne kutije. Tijekom testiranja bijele kutije, tester koristi internu točku gledišta. To znači da on ili ona procjenjuje strukturu programiranja i zapravo može pratiti tijek informacija kroz softver i odrediti gdje se problemi pojavljuju unutar programa.
U testiranju crne kutije, inženjer za testiranje softvera pretpostavlja vanjsko stajalište ili stajalište korisnika softvera. To znači da on ili ona testira što je više moguće različitih unosa informacija i procjenjuje rezultate tih unosa, ali ne može točno vidjeti gdje stvari krenu po zlu ako se problemi ipak pojave.
Nakon što je testiranje završeno, inženjer za testiranje softvera odgovoran je za ocjenu i analizu rezultata. Često će on ili ona tada raditi na osmišljavanju rješenja za sve pronađene nedostatke, kao i na načinima za poboljšanje performansi softvera. Rezultati i predložena rješenja komuniciraju se s ostalim članovima tima za osiguranje kvalitete, a poboljšanja obično provode programeri. Nakon toga, softver se ponovno testira i ocjenjuje kako bi se utvrdilo imaju li poboljšanja željeni učinak. Proces se nastavlja sve dok članovi tima ne budu zadovoljni da softver ispunjava očekivanja.
Inženjeri za testiranje softvera obično su zaposleni u tvrtkama koje proizvode i prodaju računalni softver ili u konzultantskim tvrtkama koje su angažirale softverske tvrtke. Radno okruženje je obično ured, iako je u nekim slučajevima moguć rad od kuće. Posao koji obavljaju postaje sve važniji i vrijedniji kako društvo postaje sve više ovisno o ispravno funkcionirajućim računalima u svim sferama života.