Principalul motiv pentru introducerea testelor automate este
timpul. Ca tester ai nevoie de din ce in ce mai mult timp sa verifici
componentele noi ale aplicatiei si cu cat aplicatia creste retestarea
modulelor vechi este mare consumatoare de timp si pot deveni plictisitoare
astfel crescand posibilitatea introducerii erorilor umane.
O posibila solutie la acesata problema ar fi sa se angajeze mai
multi testeri dar pentru o echipa mare de testare trebuie facut
un efort mult mai mare pentru a asigura un management eficient
asta insemnand mai multi bani implicati. Deja avem trei mari probleme:
bani, timp si calitate si aici apar solutiile oferite de testarea
automata.
scopul principal al automatizarii este de a reduce timpul de
testare prin verificarea zonelor care au fost deja testate mentinand
acelasi nivel de calitate.In acest fel se evita pierderea de timp
bani si efort pentru a face angajari deoarece noii testeri au
nevoie de perioada de adaptare, training si cheltuieli logistice.
Veti spune aici ca tool-urile de automatizare sunt foarte scumpe
si ca un expert in domeniu de asemenea costa , deci ce faceti
in acest caz? Este adevarat pe termen scurt solutiile de automatizare
sunt mai scumpe decat angajarea a cativa noi testeri dar ganditi
putin in viitor... pe masura ce dezvoltati noi release-uri veti
mai avea nevoie de inca cativa de fiecare data si astfel costurile
pe termen lung vor creste.Gandind pe termen lung solutiile de
testare automata sunt mai avantajoase. Investitia initiala este
mai mare dar beneficiile se vad in timp deoarece permite testerilor
sa se concentreze pe modulele noi facand ad-hoc testing, metoda
ce poate descoperi multe probleme. Un alt motiv ar fi testele
de regresie, cu cat aveti mai multe release-uri cu atat mai multe
teste de regresie trebuie sa faceti si acestea sunt mari consumatoare
de timp. Imaginati-va cat de bine ar fi sa stiti ca testul de
regresie se poate realiza in jumatate sau o treime din timpul
necesar pentru a-l face manual si la aceeasi calitate. In ziua
de astazi aplicatiile software sunt folosite de un numar din ce
in ce mai mare de oameni deci trebuiesc facute si teste de performanta,
in acest caz trebuie sa implementati o solutie de teste automate.
In cazul in care alegeti sa implementati o astfel de solutie
asigurati-va ca aveti macar un expert in echipa dvs altfel tool-urile
scumpe pe care le-ati cumparat vor ajunge uitate pe un raft.
In concluzie daca doriti un software performant si bine testat
intr-un timp decent e bine sa va ganditi la implementarea unei
solutii de teste automate, dar sa nu credeti ca asta va inlocui
echipa dvs de testeri.