- Principalele cerințe.
- Complemente despre testarea tip cutie alba.
Trebuiesc găsite:
fucționalități incorecte sau lipsă
erori de interfață
erori în structurile de date sau bazele de date externe
erori de performanta
erori de inițializare și terminare.
- Domeniul de intrari in clase de date pentru care pot fi generate planuri de testari.
- Incearca sa descopere clasele de erori.
- Se bazeaza pe clase de echivalenta pentru conditiile de intrare.
O clasa de echivalenta reprezinta un set de stari valide sau invalide.
O conditie de intrare este o valoare numerica specifica, un nivel al valorii, un set de valori sau o conditie booleana.
O clasa de echivalenta poate fi definita prin:
a) Daca o conditie de intrare specifica un nivel sau o valore exacta, este definita o clasa de echivalenta valida si doua de clase de echivalenta invalide.
b) Daca o conditie de intrare specifica o valoare booloeana sau un element al unui set, se definesc o clasa de echivalenta valida si un de echivalenta invalida.
- Seturi de teste pentru fiecare domeniu de intrare dezvoltate si executate.
Un mare numar de erori au loc la limitele domeniilor de valori.
AVA conduce la selectia testelor care incearca valorile limita.
AVA completeaza partitionarea echivalenta. In loc sa selecteze orice element din clasa de echivalenta sunt alese doar cele "sensibile".
Exemplu:
Pentru valori intre a si b se testeaza (a-1), a, (a+1), (b-1), b, (b+1).
Daca trebuiesc n valori de intrare se va incerca cu (n-1), n si(n+1) valori.
Se aplica 1 si 2 pentru conditiile de iesire (de exemplu se genereaza tabele de marime maxima si minima).
Daca o structura de date interna este limitata (lungimi de buffer, limite de tabele), se vor utiliza datele de intrare pentru incercarea structurilor la limita.
Translatarea din limbajul natural in proceduri soft nu este lipsita de erori.
Exemplu:
De la Corpul Inginerilor Armatei USA:
Ordinul 10358 prevede ca in cazul in care un angajat a carui saptamana de munca variaza de obisnuita de luni pana vineri, ziua de munca si ziua de rasplata vor fi reprogramate la urmatoare sucesiune de zile de lucru inaintea zilelor libere din programul obisnuit al saptamanii de lucru. Daca una din aceste zile sunt in afara saptamanii obisnuite de lucru, prima zi de lucru care urmeaza i se va acorda libera atunci cand zilele nelucratoare in care pica ziua libera este a doua zi nelucratoare sau ziua nelucratoare destinata lucratorului este sambata. Cand ziua libera destinata este in zi nelucratoare se va acorda prima zi lucratoare.
Cum va fi testat codul care incearca sa implementeze aceasta?
Graful cauza-efect incearca sa ofere o reprezentare concisa a combinatiilor logice si a actiunilor corespunzatoare.
Cauzele (conditiile de intrare) si efectele(actiunile) sunt inscrise intr-un modul si li se asigneaza cate un identificator.
Este trasat un graf cauza efect.
Graful este convertit intr-o tabla de decizie.
Tabla de decizie este convertita in seturi de teste.
Simboluri :
In unele aplicatii siguranta in functionare este foarte importanta.
Poate fi utilizat hard si soft redundant. Pentru soft se folosesc echipe separate de dezvoltare. In consecinta se va testa fiecare versiune cu aceleasi date de intrare pentru a se asigura ca avem aceleasi date la iesire. Apoi, se vor rula toate versiunile in paralel cu o comparare in timp real a rezultatelor.
Chiar daca se va rula doar o versiune in sistemul final, pentru unele aplicatii critice se pot dezvolta variante independente si utiliza teste de comparare sau testare back-to-back .
Daca iesirile difera se verifica fiecare pentru a determina defectul.
Metoda nu descopera erorile din specificatii.