Proizvodnja računalniške programske opreme je posel, ki temelji na razvoju programskih aplikacij za potrošnike. Inženir za sistemske preizkušanje je posameznik, ki je odgovoren za preverjanje programskih aplikacij glede napak. Običajno testira aplikacijo, da zagotovi, da sistem deluje tako, kot je bilo predvideno, preden jo sprosti potrošnikom na trgu.
V preteklosti so testiranje sistema zaključili programski inženirji, ki so prvotno ustvarili aplikacijo. Ta praksa se je izkazala za neučinkovito, ker so bili razvijalci preveč dobro seznanjeni s programsko opremo in so običajno zamudili sistemske napake. V zadnjih nekaj desetletjih je testiranje sistemov postalo disciplina znotraj računalništva.
Kakovostni programski izdelki zahtevajo ure strogega testiranja. Inženir za testiranje sistemov je specialist za nadzor kakovosti za organizacijo za razvoj programske opreme. Na splošno ima pooblastilo, da zavrne okvarjeno programsko opremo. Običajno dela v oddelku za testiranje v podjetju in velja za zadnjo kontrolno točko kakovosti pred proizvodnjo.
Če želite postati inženir sistemskega testiranja, mora posameznik razumeti osnovna načela računalniškega programiranja. Imeti bi moral nekaj višješolske izobrazbe s poudarkom na računalništvu. Večina velikih podjetij ima posebno ekipo za testiranje, ki je specializirana za postopke zagotavljanja kakovosti. Ta skupina običajno vključuje vodje testiranja, inženirje, tehnične pisce in preizkuševalce avtomatizacije.
Danes obstaja veliko avtomatiziranih programskih aplikacij, ki upravljajo napake, ki jih odkrije inženir sistemskega testiranja. Ta programska oprema je osnovni preglednik težav, ki jih je dokumentirala ekipa za testiranje. Inženir za testiranje je odgovoren za sledenje, upravljanje in poročanje o vseh napakah, ugotovljenih v programski aplikaciji. Ta postopek dokumentacije se običajno izvede z vsakim ciklom izdelave in testiranja programske opreme.
Preizkušanje računalniške programske opreme se običajno izvaja v samostojnem testnem okolju. To okolje upravlja in konfigurira inženir za testiranje sistemov. Odgovoren je za ustvarjanje okolja, ki spominja na sistemsko konfiguracijo, ki jo bodo uporabljali potrošniki. Inženir za testiranje ustvari posebne testne skripte, ki so zasnovani za testiranje vseh vidikov aplikacije.
Dober cikel testiranja je tisti, ki temelji na pozitivnih in negativnih testnih vzorcih. Pozitivno testiranje je proces, v katerem se sistem testira z dobrimi podatki, ki sledijo določenemu poslovnemu procesu. Negativno testiranje je oblika testiranja, ki zagotavlja pravilno obravnavo napak z neveljavnimi podatki. To velja za bolj podroben postopek testiranja, ker preizkuševalec poskuša zlomiti sistem.
Večina inženirjev za testiranje sistemov uporablja programsko opremo za avtomatizacijo za testiranje aplikacij. Ta programska oprema temelji na testnih skriptih, ki izvajajo dejanski test. Programska oprema za avtomatizacijo je natančnejša metoda testiranja, ki se lahko uporablja za regresijsko testiranje aplikacije v prihodnosti.