Documente Academic
Documente Profesional
Documente Cultură
MINISTERUL EDUCAŢIEI, UNIVERSITATEA UNIVERSITATEA TEHNICĂ UNIVERSITATEA TEHNICĂ UNIVERSITATEA SC ASTI AUTOMATION SRL
CERCETĂRII, TINERETULUI ”POLITEHNICA” DIN ”GHEORGHE ASACHI” ”POLITEHNICA”
ŞI SPORTULUI DIN CLUJ-NAPOCA DIN DIN
BUCUREŞTI IAŞI TIMIŞOARA 3 5
Obiectivul 1: prezentare concepte legate de cadrul de testare ¾SIGNON – incarca aplicatia si verifica daca aceasta este disponibila pentru
¾Sunt
Definitii si functionalitati generale executie
¾Rutine ce automatizeaza sarcini comune tuturor testelor din biblioteca
Teste standard ¾Poate solicita ID si parola utilizator pentru acces la aplicatie dupa terminarea
¾Recuperare din erori neprevazute, inregistrare rezultate testare (log-uri), etc. rutinei SETUP
Sabloane de testare
2 4 6
7 9 11
¾RECOVER – poate fi apelata de functia LOGERROR sau orice script ce pierde ¾LOGERROR – functie apelata ori de cate ori un test esueaza ¾WALKTHRU – navigheaza prin aplicatie, verificand prezenta in starea implicita a
contextul in timpul executiei suitei de teste fiecarei componente de meniu, fereastra si control
¾Proiectata initial sa colecteze maximum de informatie despre starea aplicatiei
¾Incearca restaurarea contextului la o locatie cunoscuta, astfel incat testele la momentul erorii ( context actual versus context asteptat) ¾Se verifica de asemeni ca o versiune de lucru a aplicatiei sa fie instalata si ca
subsecvente sa poata fi executate nu exista obstacole majore in executia testelor functionale
i i maii sofisticate
¾Versiuni
¾V fi ti t pott pastra
t stiva
ti de
d apeluri
l i sau continutul
ti t l unor locatii
l tii
¾Permite ca executia testelor sa nu fie abandonata sau continuata cu de memorie pentru diagnosticare viitoare ¾Fiecare ciclu de testare poate beneficia de avantajele acestui test standard
producerea de si mai multe erori pentru a se asigura ca erorile operationale fatale sunt descoperite timpuriu si
¾Poate, de asemeni, sa apeleza functia RECOVER pentru restaurarea efortul de testare va fi orientat spre aspecte de detaliu.
¾Poate include un sistem de navigare prin aplicatie pentru regasirea unui contextului necesar urmatoarului test
punct predefinit ( ex. Meniul principal) sau poate opri si restarta aplicatia (caz ¾Poate fi executat de
in care RECOVER apeleaza scriptul SIGNON) ¾CLEANUP – asigura functionalitatea inversa SETUP, eliminand acumularea de
reziduuri generate de procesul de executie a testului ¾Grupul de dezvoltare dupa construirea sistemului si inainte de a fi inaintat grupului
¾Daca pasii de recuperare nu sunt standard se poate include mesaj vizual si/sau de testare
auditiv pentru alertare operator ¾Porneste dintr-un punct stabilit (manager program sau command promt) si
sterge mediul de testare (fisiere temporare sau de lucru), face backup pe ¾Grupul de suport productie dupa ce aplicatia a fost plasata pe mediul de productie
¾Proiectat corect, permite interventia operatorului fara a se interfera cu ciclul de fisierele rezultat
testare ce poate continua ( de ex. Mesajul afisat instruieste operatorul sa suspende
reluarea, sa comute contextul pe o fereastra particulara, sa reia executia) ¾Este eficient daca pastreaza mediul de testare organizat si eficace
8 10 12
<Testarea Produselor Software> <Testarea Produselor Software> Exemplu de sablon completat ( din Lynda G. Hayes) <Testarea Produselor Software>
Teste standard <Gabriela Varvara> Sabloane de testare - definitie <Gabriela Varvara> <Gabriela Varvara>
¾STANDARDS – verifica aplicarea standardelor de proiectare pentru o ¾Furnizeaza structura dupa care vor fi dezvoltate testele individuale
componenta precizata
¾Sunt folosite pentru
¾Daca WALKTHRU verifica prezenta unor componente de meniu, ferestre si
controale grafice, STANDARDS verifica realizarea acestora conform ¾Cresterea vitezei de dezvoltare – un singur format ce poate fi copiat si
standardelor convenite a fi respectate anterior. completat
l t t rapid
id
¾Daca exista un criteriu de design ce solicita ca fiecare fereastra sa aiba buton ¾Promoveaza consistenta in dezvoltare si favorizeaza inlantuirea testelor in
de minimizare/maximizare, bara de derulare verticala si orizontala, butoane de mediul de testare
OK si CANCEL – acest lucru se va testa
¾De exemplu,
¾Acest tip de test poate fi executat de catre dezvoltatori in raport cu fiecare ¾Teste apelate ca subrutine de alte test trebuie sa permita revenirea in testul apelant
fereastra creata, ca parte a testarii pe modul/componenta.
¾Teste executate de pe un driver sau alt mecanism de control trebuie sa predea controlul
la sfarsitul executiei
13 15 17
¾TESTHELP – ca si STANDARDS poate fi folosit pentru fiecare ecran sau ¾HEADER – furnizeaza informatii de baza despre test pentru a permite executia ¾Numeste si descrie elementele constituente ale aplicatiei
fereastra. Verifica disponibilitatea functiei help in toate punctele aplicatiei . sau modificarea sa
¾Furnizeaza terminologia ce leaga testele de aplicatie
¾In raport de modul de actiune al functiei help (senzitiva pe context sau nu), ¾NEXT - pentru teste bazate pe fisiere externe – indica punctul in care se citeste
testul poate sa contina si logica suplimentara pentru a verifica raspunsul urmatoarea inregistrare din fisier ¾Cuprinde:
corect
¾Folosit ca punct de ramificare in test dupa terminarea executiei pentru o ¾Vocabular pentru testare
inregistrare
¾Precizeaza ce nume din aplicatie sunt folosite in testare si cu ce semnificatie
¾Daca in aplicatie exista mai multe zone cu o functionalitate similara, se pot ¾END – ultima sectiune executata inainte de terminare test ¾Conventii de nume – definire reguli de asignare a numelor
dezvolta si alte teste standard similare acestuia.
¾Pentru scripturi executate de sine statator poate fi doar STOP ¾Referinte incrucisate intre elementele de testare si cele din aplicatie
9Ca o concluzie, se justifica efortul si timpul in identificarea si dezvoltarea de
teste aplicabile
p cat mai extins p
pe aplicatie.
p ¾Pentru teste ce citesc fisiere externe – punct de ramificare pentru conditia ¾Orice modificare din aplicatie poate fi legata rapid de cazurile de testare potential afectate
EOF de modificare
9Prin dezvoltarea a cat mai multe functii si teste standard se faciliteaza
¾pentru teste partajate de alte rutine – comenzile necesare pentru a intoarce ¾Exemplu:
organizarea si standardizarea bibliotecii de teste
controlul catre apelant
14 16 18
¾Pentru a avea valoare pentru o organizatie, toate scripturile de testare precum si ¾Impusa de: ¾Practica testarii a condus la formalizarea a 3 metode de baza in corelatie cu
alte date si informatii legate de o aplicatie se impun memorate intr-o biblioteca starea aplicatiei, a procesului de testare si cu expertiza echipei de testeri:
ce va completa biblioteca cu sursele aplicatiei ¾La un moment de timp mai mult decat o singura versiune a aplicatiei poate fi ¾Capture/Playback
supusa testarii
¾Managementul unei biblioteci de testare include: ¾Aplicatie in faza de testare sau intretinere – stare stabila
¾(corectii pot fi ada
adaugate
gate versiunii
ersi nii c
curente,
rente in timp ce imb
imbunatatiri
natatiri sunt
s nt ada
adaugate
gate versiunii
ersi nii
¾Documentare sumara sau inexistenta a procesului de testare
urmatoare)
1. Controlul schimbarilor – schimbarile se opereaza doar de catre persoane
¾Echipa de testare, majoritar netehnica
autorizate, sunt documentate si nu se realizeaza concurent in copii diferite ¾In orice moment va trebui aplicata versiunea corecta a bibliotecii de teste asupra
cu producere de suprascriere unei anumite versiuni a aplicatiei ¾Data-driven
¾Aplicatie in faza de codificare sau inceput de testare – stare oarecum stabila
2. Controlul versiunilor - asigura pastrarea separata a testelor pentru versiuni ¾Implica intretinerea unui numar crescut de versiuni pentru biblioteca de teste
diferite ale aceleasi aplicatii ¾Documentare sumara sau buna a procesului de testare
¾Echipa de testare mixta – tehnic/nontehnic
3. Managementul
g configuratiei
g – evidentiaza orice schimbare survenita in
mediul de testare ¾Table-Driven
¾Aplicatie in fazele de planificare, analiza sau proiectare – stare instabila
¾Documentare buna a procesului de testare
¾Echipa de testare in majoritate netehnica
19 21 23
¾Desemneaza procesul ordonat de introducere de modificari in biblioteca de teste ¾Un test complet verifica mai mult decat aplicatia insasi – ultimativ testeaza intreg
mediul de executie, incluzand echipamentul suport si soft-ul conex
¾Schimbarea trebuie documentata pentru a se cunoaste natura acesteia, cine a ¾Metodele descriu optiuni posibile ce pot fi combinate spre a se raporta unei
facut-o, cand si de ce ¾Caracteristici de mediu precum –sistemul de operare de pe statia de lucru/server, situatii concrete
g
configuratia hardware,, protocolul
p de retea si conexiunile echipamentelor,
p , starea
t ad
¾Pentru
¾P documentat natura
t schimbarii
hi b ii se recomanda d includerea
i l d unuii fisier
fi i bazei de date – influenteaza derularea aplicatiei ¾O singura
i bibli t
biblioteca d teste
de t t poate
t contine
ti teste
t t ce au fost
f t proiectate
i t t prin
i
delta ce contine diferentele intre modulul vechi si cel nou metode diferite
¾Este riscanta testarea pe un mediu diferit de cel de productie
¾Un minim de explicatie asupra ceea ce s-a schimbat si unde trebuie furnizat
¾Reproducerea in conditii de duplicare perfecta este dificila – trebuie
¾Trebuie sa existe o inregistrare a schimbarilor (scrisa/electronic) cunoscute, insa, diferentele – ajuta in localizarea erorilor ¾Recomandari:
¾Operatiile de backup pot inlatura schimbarile neintentionate sau eronate ¾Drept consecinta, managementul configuratiei mediului de testare este crucial ¾Trebuie plecat de la starea curenta, indiferent de cat de departe se doreste
pentru pastrarea integritatii procesului de testare. implementarea automatizarii
¾Se verifica
erifica adaugarea
ada garea doar de teste ce a
au fost e
executate
ec tate c
cu s
succes
cces macar o data
¾Nu este suficienta cunoasterea versiunii de aplicatie ce este supusa testarii – ¾Cu ceva planificare apriorica, este posibil sa se migreze de la o metoda la
¾Trebuie sa existe o concordanta intre log-ul schimbarilor pe aplicatie si cel alta, in masura in care timpul si expertiza o permit
aferent testelor din biblioteca trebuie cunoscuta si versiunea configuratiei de operare
20 22 24
¾Testele sunt executate mai intai manual in timp ce intrarile si iesirile sunt
capturate in background
¾Viata utila script scurta – desi nu este necesara cunoasterea limbajului de scriptare
¾Ulterior se reia in mod automat scriptul - acesta va face aceleasi actiuni asupra a utilitarului folosit cand se captureaza scripturi, e absoluta necesar sa fie
noilor intrari si va compara rezultatul curent cu rezultatele inregistrate anterior cunoscut cand se fac modificari in scripturi. Drept consecinta, testerii vor prefera
sa inlature un script vechi si sa recaptureze un nou script decat sa il modifice pe
¾Diferentele sunt raportate ca erori cel vechi. Rezulta astfel si o pierdere din punct de vedere al testarii cumulative.
¾Metoda este disponibila pentru aproape toate utilitarele de testare automata ¾Avantaje: ¾Scripturile nu contin elemente decizionale – la momentul capturii unui script, toate
deciziile de urmat sunt luate de operatorul de testare si nu apar explicit in script.
¾Intrarile - selectii de meniuri, butoane radio, liste de selectie, cutii de verificare, ¾Timp minim de antrenare pe metoda (chiar si pentru testeri non-tehnici) si de setup Drept consecinta, orice esec al testului, produs adesea de un context impropriu,
sau simple butoane, apasari/ridicari ale tastelor si iesirea asteptata – sunt determina parasirea sesiunii curente cu invalidarea rezultatelor tuturor testelor
¾Testele pot fi dezvoltate din mers – permite utilizatorilor experimentati sa ulterioare. Va trebui timp si efort pentru revizuirea caderilor false.
memorate in script
contribuie in mod ad-hoc la procesul de testare
25 27 29
¾Pentru a facilita distributia unui script intre mai multi testeri, trebuie respectate ¾Dezavantaje: Consideratii privind modul de evaluare teste
urmatoarele reguli :
¾Captura testelor se face prin executia manuala a acestora – nu exista avantaje ¾Ipoteza asumata – comportamentul capturat la crearea scriptului reprezinta
¾1 script pentru o cerinta - permite corelarea numelui scriptului cu cel al privind timpul de testare (in ex. prezentat, secventa de pasi trebuie repetata pentru rezultatul corect, deci cel asteptat.
cerintei fiecare cont adaugat/actualizat/sters)
¾Pentru a aplica aceasta ipoteza,
ipoteza trebuie in prealabil:
¾Aplicatia trebuie sa fie stabila – nu exista suport de detectarea timpurie a erorilor
¾Asocierea scripturilor de o anumita zona din aplicatie ¾Sa se identifice ce rezultate vor fi verificate – pentru aplicatii cu ecran fix si
¾Redundanta si omisiune – in lipsa unei strategii globale de testare, daca alegerea informatii afisate textual poate fi verificat tot ecranul; pentru aplicatii grafice doar o
¾Faciliteaza impachetarea acestor teste legate prin caracteristici comune intr-o suita de
teste functiilor de testat e lasata la alegerea testerilor, cu mare probabilitate vor fi zone zona selectata. In ambele cazuri e dificil de spus care este zona pertinenta a fi
intens testate si altele neacoperite comparata si care nu.
¾Permite orientarea unui tester catre anumite zone ale sistemului
¾Testele trebuie combinate – in absenta unor conventii pentru nume si a unor ¾Sa se foloseasca, ori de cate ori este posibil, informatie text in locul formatului
¾Simplifica intretinerea ulterioara ori de cate ori sunt necesare schimbari standarde de dezvoltare a scripturilor, pot fi teste suprascrise ce aduc complicatii bitmap – comparatiile intre ferestre in formatul bitmap sunt impractice (cantitate
cand se incearca executia lor in acelasi set mare de informatie, dependenta de rezolutie, caracterul volatil al plasarii imaginii
¾Scripturile sa fie apelabile pe ecran de catre un manager de pozitionare)
¾Maintenabilitate scazuta a scripturilor – deoarece intrarile si iesirile sunt codificate
¾Daca utilitarul de automatizare nu are facilitatea de build-in (legarea scripturilor in suite la nivel de actiune fizica in scripturi, mici schimbari ale aplicatiei pot invalida ¾Verificarea includerii in locul excluderii – sa se defineasca ce sa aiba rezultatul si
si/sau cicluri de testare), atunci fiecare script va trebui construit sa poata fi apelat de alt
grupuri mari de teste (ex. daca se modifica numarul de secvente de control dintr-o nu ce sa nu aiba. Rezulta teste simple si lipsite de ambiguitate in validare. Nu
script. Ulterior poate fi creat un script master (sau driver) care sa contina o serie de
apeluri de executie pentru scripturi individuale. fereastra, poate fi afectat orice test ce o traverseaza – o fereastra ce are 100 trebuie cazut insa in extremitatea minimalismului, ce ar permite scaparea unor
tranzactii de testare de executat determina macar 100 de modificari in teste) erori
26 28 30
Consideratii privind datele – deoarece aceasta metoda presupune ca aceleasi ¾Exemplu : ¾Pentru a defini cazurile de testare ca inregistrari intr-un fisier cu date extern
intrari produc aceleasi iesiri, starea datelor este critica: scriptului , elementele de date din aplicatie asociate fiecarui proces trebuie
¾porneste de la scriptul capture/playback precedent modificat sa adauge un fisier cunoscute. Acest lucru se realizeaza prin intermediul hartii aplicatiei.
¾Datele statice – ciclul de testare trebuie sa contina pasi care sa aduca baza de extern si sa inlocuiasca valorile fixe cu variabile
date la o stare cunoscuta (reactualizare cu o copie noua sau populare cu ¾De asemeni trebuie sa se respecte urmatoarea structura:
inregistrari cunoscute)
¾1 script pentru 1 proces – metoda este legata de o singura secventa de procesare
¾Datele dinamice – exista date ce sunt generate dinamic de aplicatie si care ce suporta mai multe cazuri de testare
vor avea o valoare la captura testului ce nu va mai fi reprodusa de aplicatie la
¾ 1 inregistrare din fisierul extern reprezinta un caz de test al carui identificator este
oricare alta reluare a sa. Se recomanda memorat in fisier. Permite unui script sa proceseze mai multe cazuri de test si sa
inregistreze rezultatele in fisierul log.
¾Folosirea variabilelor – pentru lucrul cu date create dinamic. Acestea vor inlocui
datele fixe de la captura atunci cand se vor relua testele. Necesita un tester care sa ¾Aplicatia sa utilizeze datele in mod intensiv ( aceeasi pasi in aplicatie se repeta de
cunoasca ce valori dinamice ar trebui sa apara la fiecare reluare a executiei unui un numar mare de ori cu date diferite)
test.
¾Nu exista diferente semnificative intre secventele de actiuni derulate pentru intrari
diferite. Daca un camp din intrare ar determina procesari diferite pentru fiecare
valoare a sa, volumul de logica necesar procesarii fiecarui caz de test ar creste
exponential.
31 33 35
¾Daca in metoda Capture/Plaback intrarile si iesirile sunt fixe, la metoda Data- ¾Fisierul cu variabile fiind: ¾Permite crearea timpurie a cazurilor de testare
Driven ele sunt variabile.
¾Aplicatia nu trebuie sa ajunga la un anumit grad de stabilitate pentru a crea
¾Aceasta
¾A t este
t realizata
li t prini executiati manualal a testului
t t l i si,
i apoi,
i prin
i inlocuirea
i l i cazurile de testare sub forma de fisiere de date
date. Doar crearea scriptului curent
intrarilor capturate si iesirilor asteptate cu variabile ale caror valori sunt memorate trebuie sa astepte aplicatia.
in fisiere de date externe scriptului.
¾Flexibilitate in crearea cazurilor de testare
¾Secventa de actiuni ramane fixa si este memorata in scriptul de testare
¾Fisierul cu cazuri de testare poate fi in formate diferite ( foaie de calcul, word, baza
de date, etc). Crearea acestuia nu implica expertiza in lucrul cu utilitarul de testare
¾Metoda este disponibila pe majoritatea utilitarelor de testare ce folosesc un ¾Efort minim cu efect maxim
limbaj de scriptare cu facilitatea de date variabile,
variabile dar nu este posibila cu utilitare
¾Un singur script de testare poate aplica mai multe cazuri de test. Mai mult, cazuri
destinate exclusiv metodei Capture/Playback.
de testare pot fi adaugate ulterior fara modificarea scriptului de testare.
32 34 36
¾Metoda impune
Dezavantaje: ¾Difera de metoda Data-Driven prin faptul ca setul de actiuni necesar procesarii ¾cunoasterea elementelor de tip date din aplicatie (similar cu Data-Driven)
datelor este si el memorat intr-un fisier extern si nu in script.
¾Implica expertiza in lucrul cu utilitarul de testare ¾Denumirea si definirea ferestrelor, meniurilor si tipurilor de obiectelor grafice de
¾C i t – parcurgerea testului
¾Consecinta t t l i este
t complet
l t automatizata
t ti t lucru precum si a metodelor ce pot fi aplicate pe acestea
¾Pentru a transforma un script spre al face sa proceseze date variabile integrate din
¾ in fazele incipiente de dezvoltare tipurile de obiecte si metodele pot sa nu fie cunoscute,
fisiere externe, trebuie ca macar un membru al echipei de testare sa aiba abilitati ¾Intrarile si iesirile asteptate si secventele de actiuni sunt create ca inregistrari de dar nu impiedica dezvoltarea cazurilor de testare sub forma de referinte catre intrari si
de lucru in aceasta directie date iesiri precizate ulterior
¾Implica expertiza in managementul fisierului ce contine cazurile de testare ¾Drept consecinta, scripturile de testare sunt ¾Structura :
¾Acest lucru poate insemna cunostinte in manipulare ¾Rutine executate secvential ce au la baza date de test
¾1 fisier cu date de test si mai multe scripturi – un singur script poate fi procesat de mai
¾Reutilizabile pentru mai multe aplicatii multe scripturi (comune, standard, master, legate de o anumita metoda). Fiecare obiect si
¾macrouri Excel, sabloane de procesare word sau formulare de lucru cu bazele de date metoda are un scriptp ce contine comenzile si logica
g de executie a acestuia
¾Complet generice – se bazeaza pe tip camp/obiect si actiunea de efectuat ; instanta
¾operatii de export date in format compatibil cu utilitarul de testare ¾Mai multe inregistrari formeaza 1 caz de testare - un singur caz de testare este memorat
camp/obiect este definita in harta aplicatiei si furnizata rutinei cand este executat
testul. prin mai multe inregistrari, fiecare inregistrare reprezentand un singur pas. Identificatorul
cazului de testare trebuie memorat in fiecare inregistrare a sa ( vezi slide urmator). In
acest fel, un singur set de scripturi va putea procesa mai multe cazuri de testare.
Rezultatele testarii vor fi inregistrate dupa fiecare pas si nu la sfarsitul cazului de testare
37 39 41
¾Exemplu:
Considerente privind datele:
¾Un script poate prelua cazuri de testare din mai multe fisiere. In acest caz logica scriptului
se modifica cu includerea de cicluri de procesare pentru fiecare fisier extern de date.
Scriptul SELECT_MENU:
38 40 42
¾Principalul avantaj – intretinere flexibila si completa ¾Cere cunostinte avansate si experienta de programare si expertiza in lucrul cu ¾Pe langa selectia unei metode de testare, este deosebit de importanta alegerea
utilitarul de testare echipei de testare
¾Dezvoltarea in faze incipiente ale dezvoltarii ale cazurilor de testare si scripturilor
¾Pentru proiectarea si construirea bibliotecii de scripturi modulare trebuie avute ¾M b ii trebuie
¾Membrii t b i sa aiba
ib
¾Cazurile de testare pot fi create chiar din faza de inginerie a cerintelor si memorate cunostinte de programare, de logica a legarii acestora impreuna si executie
in fisiere controlata cu ajutorul fisierelor externe ¾abilitatile cerute de rolul lor in echipa
¾Scripturile ce proceseaza datele pot fi create de indata ce obiectele ( ecran, ¾Managementul datelor este critic ¾autoritatea de a-si duce la bun sfarsit responsabilitatea
fereastra, controale) si metodele au fost definite (de exemplu seful echipei trebuie sa poata
¾Deoarece toate informatiile sunt memorate ca date, trebuie stabilite reguli precise
¾Intretinere cu efort minim de lucru cu acestea si creata o baza de management a acestora (astfel, desi pot fi Controla activitatile membrilor echipei)
folosite tabelele Excel, o baza de date este de recomandat )
¾Favorizata de existenta unei biblioteci de scripturi, modulare,reutilizabile
¾Biblioteca de teste poate fi portata intre aplicatii deoarece mai toate aplicatiile sunt
formate din aceleasi elemente de baza (ecrane, campuri, taste pentru aplicatii bazate
pe lucrul cu caractere; ferestre si controale grafice pentru aplicatii GUI)
43 45 47
¾logica este definita si memorata doar la nivelul metodei (script) ¾Dezvolta si executa cazuri de testare
¾Analizeaza si raporteaza rezultatele testarii
¾Scripturile contin suficienta logica pentru a verifica starea si contextul aplicatiei
asftel incat reluarea testelor sa se realizeze corect g
¾Pregatiti sa dezvolte teste (in
( fisiere sau sub forma de script)
p ) si sa utilizeze cadrul
de testare
¾Drept consecinta, testerii individuali pot crea cazuri de testare fara a cunoaste cum a fost
programata logica executiei ¾In realitate, dezvoltarea testware incepe mai tarziu (decalare spre dreapta), unele ¾Dezvoltatori scripturi
faze pot fi comprimate in timp, dar numarul si succesiunea lor trebuie sa se
¾Tot ce trebuie sa cunoasca un tester refera numele componentelor aplicatiei si metodele pastreze ¾Programatori cu experienta ce cunosc bine utilitarul de testare
si valorile aplicabile pentru acestea
¾Responsabili cu dezvoltarea si intretinerea cadrului de testare
44 46 48
49 51 53
¾Planul de testare ¾Sectiunile planului de testare (continuare) ¾Proiectarea unui ciclu de testare
¾Descrie pasii necesari automatizarii testarii
¾Echipa de testare – nume si roluri ( va fi folosit pentru referinte incrucisate) ¾Exista mai multe tipuri de cicluri de testare necesare
¾Precizeaza
¾Ciclul de regresie – presupune executia intregii biblioteci de teste
¾de ce componente are nevoie biblioteca de teste
¾Ciclu fix – testeaza anumite zone ale aplicatiei, de regula unde s-au efectuat schimbari
¾Resursele necesare
¾Graficul calendaristic al activitatilor ¾Etc.,
¾Criteriile de intrare/iesire pentru executia fiecarui pas ¾Indiferent de tipul de ciclu de testare, anumite elemente vor trebui considerate
¾Este un document dinamic actualizat pe parcursul ciclului de testare ¾Calendar activitati in proiectare:
¾Planificarea ciclului de testare pentru un mediu automatizat va minimiza, pe cat ¾Setup – ciclul incepe intotdeauna cu setarea mediului de testare ( verifica
configuratii si variabile ce afecteaza executia)
posibil, supervizarea sau interactiunea directa.
¾Configurare adecvata a platformei de testare – hardware, sistem operare, utilitare,
¾In mod ideal, un ciclu de testare trebuie sa pregateasca si sa verifice mediul de sincronizare intre aplicatie si biblioteca de testare
testare, sa execute suitele de teste secvente individuale de teste, sa produca
rapoarte cu rezultatele testarii si sa elibereze resursele implicate – toate in mod ¾Unele portiuni din configurare pot fi automatizate, altele nu (incarcare software, etc.)
complet automatizat
¾Configuratia trbuie atent verificata si documentata
50 52 54
¾Context – contextul de inceput si de sfarsit trebuie sa fie in acelasi punct, de regula ¾Pass/fail – rezultatul executiei unui caz de testare
managerul de program sau prompterul din linia de comanda.
¾ Ideal, ar trebui sa se coreleze cu o cerinta ce are o anumita prioritate
¾Este importanta si initializarea starii bazei de date ( restaurare versiune curata,
curata sau a unui
subset adaugat sau rescris) ¾Performanta
¾Elementele de date, cum ar fi contorii de erori pot fi initializati pentru a garanta stergerea ¾pe langa timpul de executie al fiecarui test, daca se testeaza aplicatii de tranzactionare
rezultatelor precedente. intre server si masina client, vor trebui inregistrate valorile maxime si medii ale timpului
de raspuns. Adesea cerintele legate de aplicatiile de tranzactionare impun un timp maxim
¾Planificarea executiei – adesea cuprinde programarea pentru un set de cicluri de de raspuns si/sau o valoare medie asteptata.
testare. Secventierea trebuie sa reflecte toate corelatiile pe context sau date, dar si
¾Masuratorile de performanta, pot sa includa timpul total de executie al unor functii
testele standard (ex. WALKTHRU). Folosirea unui sablon pentru planificarea (update sau alte procese batch)
executiei testelor este util pentru a garanta includerea la fiecare executie a tuturor
testelor standard si a taskurilor. ¾Stabilirea performantelor aplicatiei testate este un proces critic. Drept consecinta trebuie
garantata executia testelor necesare care sa garanteze daca cerintele sunt indeplinite in
¾Stergere – un ciclu trebuie sa se termine cu stergerea mediului de testare fapt
55 57 59
¾Executia testelor - pentru un ciclu de testare automatizat intr-o maniera ideala, ¾Configuratia – fiecare log de testare va indica precis ce configuratie exista la
interventia sau supervizarea operatorului nu este deloc necesara. Procesul de executia sa (ori in antet ori ca un comentariu specific). Daca log-urile testelor
executie va produce si documenta rezultatele. ulterioare denota rezultate de performanta complet diferite, atunci modificarea
configuratiei de executie poate fi cauza diferentelor.
diferentelor
¾Aceasta documentatie ar trebui sa fie suficienta pentru a determina care teste
au esuat si care au trecut, ce performanta a fost atinsa, dar si orice alta
informatie necesara legata de diagnoza defectelor. ¾Totaluri – numarul total de cazuri de testare, trecute sau nu, ca si timpul total
de testare, ar trebui furnizat la sfarsitul log-ului. Astfel, se va simplifica
¾Inregistrarea rezultatelor testarii (test log) – raporteaza rezultatele executiei actualizarea tendintelor istorice.
testelor pentru fiecare caz de testare.
¾De ex. un test executat prea repede ar putea indica faptul ca nu parcurge tot
traseul executiei proprii. Un test executat prea lent ridica probleme legate de timpul
de rapuns al calculatorului gazda)
56 58 60
61 63 65
¾De ex. la scrierea gresita a numelui unei ferestre poate sa apara o singura eroare; daca
¾Despre rezultate neprecise – nu reflecta cu acuratete starea aplicatiei de o tato u caruia
¾dezvoltatorul ca u a ii este atribuit
at bu t si
s
testul face insa compararea numelui ferestrei de mai multe ori, atunci in mod nedorit
aceasi eroare este raportata de mai multe ori.
¾data cand a fost remediat.
¾Sunt trei tipuri de rezultate neprecise: cadere falsa, succes fals, caderi
¾Odata reparata eroarea numarul de erori va scadea dramatic.
duplicate:
¾Folosirea numarului de erori pentru a aprecia calitatea aplicatiei poate fi inselator –
aplicatia pare plina de defecte ce au fost corectate miraculos de catre testeri.
62 64 66