Sponzorizat de newsflash.ro
Jobul de software tester (QA), in ciuda a ceea ce cred unii oameni, este unul complex si necesita un set de mai multe cunostinte extrem de necesare pentru a performa cu adevarat. Deoarece un QA engineer trebuie sa aiba o privire cat mai de ansamblu asupra produsului, orice fel de cunostinta tehnica poate fi un avantaj in cadrul procesului de testare.
Insa una dintre cele mai intalnite intrebari este daca un software tester trebuie sa cunoasca si programare pentru a putea indeplini sarcinile de serviciu aferente? Cum raspunsul poate avea mai multe nuante in functie de context, trebuie sa detaliem mai intai unele lucruri, inainte de a oferi un raspuns acestei intrebari.
Testarea de tip manual si cea automatizata
In functie de modul in care anumite scenarii si cazuri de test se executa de catre membrii echipelor de QA, testarea poate imbraca la nivel general 2 forme principale.
Executarea manuala a testarii presupune verificarea unei functionalitati sau a unui produs software in mod direct de catre tester, prin interactiune directa cu obiectul testat, folosindu-l ca un utilizator obisnuit: sa introduca niste date, sa verifice limitele la anumite input-uri cu intervale, sa se logheze, sa caute anumite lucruri, sa dea click pe butoane, sa vada daca e suficient de intuitiva pe partea de User Experience (UX) si asa mai departe.
Pentru a realiza aceste tipuri de actiuni, e nevoie mai degraba de o minte rationala si de o intelegere a unor notiuni tehnice minimale.
A doua forma este cea a executarii automatizate a testelor. Spre deosebire de partea manuala, testarea automata presupune scrierea unor scenarii si cazuri de test automatizate cu ajutorul codului si al unor instrumente speciale numite framework-uri de automatizare, care odata pornite, interactioneaza singure cu aplicatia noastra si verifica anumite functii si asertii (assertions = conditii care verifica daca un test a trecut sau a picat).
In ce context e nevoie de programare in testare software?
Dupa ce am explicat pe scurt care e diferenta intre testare manuala si automata, e putin mai usor de inteles contextul in care intervin notiunile de programare in testare software. Pentru a realiza o analiza de calitate cat mai detaliata si mai precisa asupra unui produs software, trebuie implicate ambele tipuri de testare, si manuala dar si cea automata.
Automatizarea unor cazuri de test care de regula sunt repetitive (de exemplu sa dam click pe un anumit buton sa vedem ca functioneaza normal) este necesara pentru ca reduce semnificativ timpii alocati de echipa acelor task-uri.
Insa nu ne putem baza doar pe automatizare, deoarece riscam sa ne departam de perspectiva unui simplu user care nu stie la fel de precis cum se comporta aplicatia sau ce trebuie sa faca prima data, asa cum fac testele automate scrise de testeri ce cunosc produsul respectiv.
De asemenea, nu ne putem baza la randul nostru doar pe testare manuala. In primul rand, s-ar consuma extrem de…
Sponzorizat de newsflash.ro
Citeste continuarea pe www.blogdeit.ro