Documente Academic
Documente Profesional
Documente Cultură
Modul stub este o secventa de cod care simuleaza comportamentul unei componente
neimplementate inca.
Modul driver este o secventa de cod care conduce integrarea astfel incat unitatea
testata poate primi datele de la componentele neimplementate inca, sau pot fi preluate dintrun fisier.
Teste de integrare
Sunt dedicate verificarii interactiunilor dintre module, grupuri de module, subsisteme, pana
la nivel de sistem.
Exista mai multe metode de realizare a testelor de integrare.
Este necesara implementarea de module "stub" si module "driver".
Numarul de module "driver" si de module "stub" necesare in testele de integrare depinde de
ordinea in care sunt integrate modulele.
Testele de integrare necesita, de asemenea, instrumente de gestiune a versiunilor si a
configuratiilor.
Teste de integrare
Metoda "big-bang"
Sunt integrate intr-un program executabil toate modulele existente la un moment dat.
Modulele "driver " si "stub" necesare sunt de asemenea integrate.
Metoda este periculoasa caci toate erorile apar in acelasi timp si localizarea lor este dificila.
Integrare progresiva
In fiecare pas se adauga ansamblului de module integrate numai un singur modul.
Erorile care apar la un test provin din ultimul modul integrat.
2 metode:
Integrare ascendenta
Integrare descendenta
Teste de sistem
Sunt teste ale sistemului de programe si echipamente complet.
Sistemul este instalat si apoi testat in mediul sau real de functionare.
Sunt teste de conformitate cu specificatia cerintelor software :
teste functionale, prin care se verifica satisfacerea cerintelor functionale
teste prin care se verifica satisfacerea cerintelor ne-functionale :
de performanta,
de fiabilitate,
de securitate, etc.
Adesea, testele de sistem ocupa cel mai mult timp din intreaga perioada de testare.
Tipuri de teste. Teste de acceptare
Sunt teste de conformitate cu produsul solicitat, conform contractului cu clientul (>Specificatia cerintelor utilizatorilor).
Aceste teste sunt uneori conduse de utilizator.
Pentru unele produse software, testarea de acceptare are loc in doua etape:
1.Testarea alfa: se efectueaza folosindu-se specificatia cerintelor utilizator
2.Testarea beta: programul este distribuit unor utilizatori selectionati, realizandu-se astfel
testarea lui in conditii reale de utilizare.
Combinatii conditie/ramura
1Foloseste un model al controlului executiei in care fiecare combinative de intrari de tip
decizie/conditie trebuie testate pentru a verifica daca fiecare ramura este acoperita
2Pentru fiecare caz de testare se va specifica:
1 Intrarea/intrarile componentei
2 Iesirea asteptata a cazului de testare care poate arata ce ramura a fost acoperita
3Criteriu de finalizarea testuluipentru o conditie ce contine n operatori booleeni, rezulta
2n pentru a garanta o acoperirede 100%
Este complexitatea ciclomatica a grafului redus obtinut prin inlaturarea deciziilor si altor noduri
ce nu afecteaza controlul apelului modulului subordonat
3
4 Implicatiile utilizarii complexitatii ciclomatice in testare
5 Ajuta in determinarea numarului de cazuri de testare necesare pentru a atinge
gradul maxim de acoperire pentru un modul particular.
6 Numarul de cai dintr-un graf de control al executiei reprezinta un numar maxim
al cazurilor de testare (asigura acoperire 100%).
7 Numarul efectiv de cai de testat poate fi diminuat, unele din cai fiind imposibil de
urmat.
8 acoperirea ramificatiilor<=complexitatea ciclomatica <=numar cai
38
39
40
41
42
43
3
1
Metrici pentru masurarea rezultatelor testarii
Masoara eficacitatea rezultatelor:
Meticulozitatea testarii gradul de acoperire al testarii
1 Folosesc criterii de testare ce solicita exersarea sistematica a
anumitor tipuri de elemente din program/specificatie
2 Se vor utiliza masuri relative ale elementelor acoperite in raport cu numarul total
de elemente
Introducerea artificiala de erori
3 Introducerea precede testarea; aceasta va pune in evidenta atat erori
insamantate cat si alte erori
4 Eficacitatea este data de numarul de erori introduse si depistate
5 Este folosita pentru estimarea erorilor program ce vor ramane nedepistate
6 Scorul de mutatie
7 Presupune introducerea de modificari in cod
8 Eficacitatea testarii este masurata prin raportul dintre mutantii introdusi/mutantii
eliminati
9
10 Acoperirea testarii pe instructiuni
11 Presupune exersare tuturor instuctiunilor
12 Calculul acoperirii pe instructiuni presupune: