testarea integrare

20
Testarea de Integrare Autor: Cristian Ilie Grupa: TI121

Upload: victor-gligor

Post on 10-Apr-2016

82 views

Category:

Documents


0 download

DESCRIPTION

testarea integrare power point. in prezentare este descrisa una din metodele de testare a programelor

TRANSCRIPT

Page 1: Testarea integrare

Testarea de Integrare

Autor: Cristian Ilie Grupa: TI121

Page 2: Testarea integrare

Testarea Software

Tehnicile si metodele moderne de elaborare a produselor software acorda o importanta deosebita efortului de inlaturare a erorilor de analiza, proiectare si programare prin folosirea unor mijloace evoluate.

Testarea reprezinta o etapa importanta in procesul de realizare a produselor software. Ponderea cheltuielilor cu testarea reprezinta intre 30% si 50% din totalul cheltuielilor pentru dezvoltarea unei aplicatii software.

Page 3: Testarea integrare

Testarea Software “Testarea este procesul prin care se executa un program cu intentia de a gasi erori”, conform Myers, The Art of Software Testing

Mai mult, “testarea este utilizata pentru a semnala prezenta defectelor unui program, fara a garanta absenta lor”, Dijkstra. De unde putem deduce faptul ca un test de success este Acela care descopera si localizeaza o eroare.

Page 4: Testarea integrare

Erori, costuri

Intr-un program/aplicatie cauzele aparitiei erorilor sunt diverse, dintre care: Deficientele din specificatii – aproximativ

60 %; Erori de proiectare – aproximativ 30 %; Erorile de programare – uneori sub 15 %

Page 5: Testarea integrare

Testele de integrare

examineaza mai multe trasaturi si componente ale unui software individual

cu scopul de a determina daca o trasatura ori o componenta noua se

potriveste bine cu (sau se integreaza in) trasaturile si componentele deja

existente.

Page 6: Testarea integrare

Un modul software sau componenta reprezinta un element de sine statator al unui sistem. Modulele poseda interfete bine definite cu alte module. Ele pot fi subroutine, functii, procedure, clase sau colectii ale acestor elemente combinate pentru a furniza un serviciu de o calitate superioara. Un sistem este o colectie de astfel de module interconectate intre ele pentru a indeplini un obiectiv.

Page 7: Testarea integrare

Testele de integrare sunt folosite pentru a dovedi ca toate trasaturile si componentele software functioneaza bine impreuna.

Page 8: Testarea integrare

Importanta testarii de integrare reiese din urmatoarele considerente:

-Modulele sunt create in general de dezvoltatori diferiti, ce pot lucre din diferite locatii. In ciuda eforturilor depuse la realizarea design-ului de sistem si a documentatiei, pot aparea erori, interpretari gresite sau omisiuni. Erori de interfata module dezvoltate de programatori diferiti sunt inevitabile;

Page 9: Testarea integrare

- Testarea unitara a modulelor individuale este efectuata intr-un mediu controlat folosind driver-e de test. Daca un modul sub testare unitara invoca alte module eficienta testarii este constransa de abilitatea programatorului de a testa toate caile. Astfel, mostenind limitarile de la testarea unitara, este dificil de prevazut comportamentul unui modul in mediul sau de lucru dupa ce s-a realizat testarea unitara;

- Unele module sunt mai predispose la erori decat altele din cauza complexitatii acestora. Este esentiala identificarea celor care cauzeaza cele mai multe esecuri.

Page 10: Testarea integrare

Tipuri de testare: Smoke testing

Este o varianta a testarii de integrare ce permite echipei de dezvoltare sa evalueze frecvent starea sistemului soft. - componentele soft deja implementate sunt integrate intr-un build (constituit din toate fisierele de date, bibliotecile, modulele reutilizabile si componentele necesare pentru implementarea uneia sau mai multor functii ale sistemului soft); - se proiecteaza un set de teste menite sa expuna (dezvaluie) erorile care impiedica build-ul sa functioneze normal; - build-ul se integreaza cu alte build-uri si sistemul soft in ansamblu (ceea ce s-a implementat) este testat zilnic.

Page 11: Testarea integrare

Regression testing

Reprezinta re-executia unui subset de teste, ori de cate ori la testarea de integrare sau la intretinere se adauga/modifica un modul, in scopul gasirii eventualelor erori de integrare provocate de efecte secundare.

Page 12: Testarea integrare

Procedura de integrare are doua forme principale:

Testarea neincrementală (big-bang testing)

Consta in integrarea componentelor prin gruparea tuturor modulelor dintr-o data, urmata de testarea intregului ansamblu. Acest tip de integrare nu este recomandata, deoarece corectarea erorilor va fi foarte greu de realizat.

Page 13: Testarea integrare

Testarea incrementalaPresupune construirea structurii programului pas cu

pas si testarea ansamblului obtinut. Un element important in executia testului este secventa in care modulele trebuie sa fie testate. Astfel, testarea de integrare se realizează ascendent (bottom-up) sau descendent (top-down).

Page 14: Testarea integrare

Integrarea descendenta Etape:1. Construirea arhitecturii initiale+modulul principal se foloseste pe post de driver de test (program de test);+modulele apelate se inlocuiesc cu inlocuitori (stub);2. Construirea arhitecturii: pentru fiecare modul ramas de integrat+ se selecteaza modulul M care se integreaza in arhitectura existenta in loculinlocuitorului sau;+ se efectueaza testele de integrare pentru M;+(optional) se efectueaza teste de regresie (aferente modulele deja integrate) pentru a se asigura ca integrarea noului modul nu produce efecte secundare (nedorite); +pasul 2 se repeta pana cand s-au integrat toate modulele.

Page 15: Testarea integrare
Page 16: Testarea integrare

Integrarea ascendenta Etape:1. Construirea grupurilor: pentru fiecare grup (cluster, build)+ modulele frunza integrate in el realizeaza impreuna o subfunctie;+ se scrie un program de test (driver) pentru citirea datelor de test si scrierearezultatelor;+ se testeaza grupul curent.2. Construirea arhitecturii: grupurile testate se integreaza succesiv pana se ajunge lasistemul complet+ se inlatura programele de test Driver1 si Driver2 pentru doua grupuri G1 si G2 si seintegreaza grupurile intr-un grup G;+se scrie un program de test Driver12 pentru G;+ se testeaza G;+pasul 2 se repeta pana cand s-a construit integral sistemul.

Page 17: Testarea integrare
Page 18: Testarea integrare
Page 19: Testarea integrare
Page 20: Testarea integrare

Mulțumesc pentru atenție!