Résumé Tests Et Maintenance

Télécharger au format docx, pdf ou txt
Télécharger au format docx, pdf ou txt
Vous êtes sur la page 1sur 7

logiciel : un ensemble de squences dinstructions interprtables par une machine

Un ensemble de programmes, de procdures, de documentation associe et de donnes


concernant le fonctionnement dun systme informatique (ISO 24765)
Qualit : Exactitude, fiabilit, robustesse, performance, convivialit, interoprabilit,...

Erreur : Action humaine qui produit un rsultat incorrect (ISO 24765)


Dfaut ou faute :
- Une erreur qui, si elle nest pas corrige, pourra causer une dfaillance ou produire des
rsultats incorrects (ISO 24765)
- Un dfaut est introduit dans le logiciel comme consquence dune erreur.
Dfaillance ou panne : Cessation de laptitude dun produit accomplir une fonction
requise ou de son incapacit sen acquitter lintrieur des limites spcifies
prcdemment (ISO 25 000)
Cot du test : environ 40%du cot du dveloppement.
Tests vs Dbogage
Test de logiciel : Excuter le logiciel pour trouver les fautes ou gagner en confiance dans le
systme.
Cas de test : Item reli aux tests et qui contient :
- Un ensemble de donnes dentre de test : reues dune source externe
(matrielle, logicielle, ou humaine) par le code test.
- Des conditions dexcution : requises pour excuter le test, par exemple une
base de donnes qui se trouve dans un certain tat, ou une configuration particulire
dun dispositif matriel.
- Les sorties attendues. Il sagit des spcifis que le code test doit produire.
Jeu de tests : Ensemble de cas de tests.
Dbogage : localiser le dfaut, rparer le code, tester le code nouveau.
Harnais de tests : Stubs et drivers
Driver : fragment de code qui invoque le module sous test.
fournit les donnes dentre, invoque le module sous test, collecte et compare les rsultats
Stub : fragment de code qui simule un module manquant.
implmentation simplifie, valeurs de retour hard-codes.
Tests boite noire ou test bass sur les spcifications ou tests fonctionnels
le code est une grosse boite.
particulirement utile pour rvler des dfauts au niveau des spcifications
Tests boite blanche ou boite transparente ou boite de verre
concentrs sur la structure interne du code
utiles pour rvler des dfauts relis la conception, ou au code (contrle, logique,
squences, initialisation, flux de donnes)

Test de systme : Le logiciel est compar avec les spcifications des besoins.
Toujours effectue par des dveloppeurs qui connaissent le systme.

Test dacceptation : Le logiciel est compar avec les spcifications de lutilisateur final.
Toujours effectus par le client ( acheteur) qui connat lenvironnement o le systme est
utilis. Parfois on distingue entre alpha et bta pour les produits usage gnral.
alpha : test avant la livraison.
bta : test durant un dploiement petit chelle.
Test bote noire
Les cas de tests sont conus partir dune spcification.
Tests intuitifs ne sont pas fiables (ou ad-hoc)
Classes dquivalence
Domaine = nombres en virgule flottante, 1.0 <= valeur <= 500.0
valide : EC1 : 1.0<= valeur <= 500.0
invalide : EC2 : valeur < 1.0
invalide : EC3 : valeur > 500.0

FONCTIONS LOGIQUES
if(x>2 && (y==z || w!=3))
A : x>2
B : y==z
C : w!=3
Z = A(B+C)
Z est un prdicat
A, B, C sont des clauses
Z, A, B, C prennent des valeurs boolennes.

couvertures de base
couverture combinatoire, prdicats, clauses, clauses actives.
P : ensemble de prdicats
C : ensemble de clauses et P

Cp ; ensemble de clauses dans un prdicat p.


Couverture combinatoire
Z = A(B+~C) nombre de tests = 2^Cp = 2^3 = 8
#

Couverture de prdicats
Z = A(B+~C)
Z 0 {0,1,2,3,5}
Z 1 {4,6,7}
ex de jeu de test : {0,5}
A 0 : {0}
A 1 : {5}
Couverture de clauses
pour chaque cEC, il faut deux conditions de test : c valu vrai et c valu faux.
ex : Z = A(B+~C)
A0&1
B0&1
C0&1
jeu de tests : {0,7}

Couverture de clauses actives


A est clause active quand cest lui de dcider le rsultat de Z.
si A = 0, alors z =0 & si A = 1, alors Z = 1.
Z = A(B+~C)

B est clause active si A = 1 et C = 1.


Z = 1(B+0)
B=1:Z=1
B=0:Z=0
Clauses actives correles (CACC)
Pour chaque pEP et chaque clause majeure Ci E Cp, choisir les clauses mineures Cj, j<> i
de telle faon que Ci dtermine p. Il y a deux conditions requises de test pour chaque Ci : Ci
value vraie et Ci value fausse.
Les valeurs choisies pour les clauses mineures Cj doivent causer p tre vrai pour une
valeur de la clause majeure Ci et faux pour lautre, c--e, il est requis que p(ci = vrai) <> p(ci
= fausse)
CACC est subsum par la couverture combinatoire de clauses et susume la couverture de
clauses/prdicats.
Z = A(B+C)
Il est possible de satisfaire CACC par rapport la clause A avec les deux conditions
requises de test :
{A(1),B(1),C(0)}
{A(0),B(0),C(1)}
Clauses actives restreintes (RACC)
Pour chaque p E P et chaque clause majeure Ci E Cp, choisir des clauses mineures Cj, j<> i
afin que Ci dtermine p. Il y a deux conditions requises de test pour chaque Ci : Ci value
vraie et Ci value fausse. Les valeurs choisies pour les clauses mineures Cj doivent tre
les mmes quand Ci est vraie que quand Ci est fausse, il est requis que Cj(Ci = vraie) =
Cj(Ci = fausse) pour tous les Cj.
RACC rend plus facile de dterminer la cause du problme que CACC.
Il arrive davoir des contraintes entre les clauses qui rendent RACC impossible raliser.
Lexemple prcdent ne satisfait pas la RACC
{A(1),B(1),C(0)}
{A(0),B(0),C(1)}

Forme normale disjonctive (DNF)


Les critres supposent que les prdicats ont t r-exprims sous une forme normale
disjonctive.
Critres : la couverture des implicants, la couverture des implicants premiers.
DNF - couverture dimplicants (IC)
tant donnes les reprsentations DNF dun prdicat p et sa ngation ~p, pour chaque
implicant, une condition test requise est que limplicant est valu vrai.
Ceci teste diffrentes situations dans lesquelles une action devrait (ou ne devrait pas) tre
prise.
P: AB + B ~C

~P : ~B + ~AC
Quatre implicants : {AB, B~C, ~B, ~AC}
IC subsume la couverture de prdicats, mais pas ncessairement la couverture de clauses
actives.
DNF - Couverture dimplicants premiers (PIC)
Obtenir une forme DNF o chaque implicant peut tre satisfait sans satisfaire aucun autre
implicant.
Un sous-terme propre dun implicant est limplicant avec une ou plusieurs clauses omises.
Un implicant premier est un implicant dont aucun sous-terme propre de limplicant est aussi
un implicant.
Exemple : ABC + AB~C + B~C
ABC nest pas un implicant premier parce que un sous-terme propre (AB) est aussi un
implicant.
PIC : tant donnes des reprsentations DNF non redondantes dimplicants premiers dun
prdicat p et de sa ngation ~p, pour chaque implicant, une condition requise de test est que
limplicant est valu vrai, pendant que les autres implicants sont valus faux.
-------------------------------------p : AB + B~C
~p : ~B+~AC
Les deux sont des reprsentations de limplicant premier non redondant.
Lensemble de tests suivants satifait le PIC : {TTT, FTF, FFF, FTT}
Le PIC est un critre de couverture puissant aucun critre de la couverture de clauses ne
subsume le PIC.
Quoiquil y ait potentiellement jusqua 2^n-1 implicants premiers, en gnral, les prdicats
gnrent un nombre modeste de tests pour le PIC.
Savoir si le PIC subsume tous les critres de la couverture de clauses reste une question
ouverte.

TESTS DE LOGICIEL
diffrent selon procdurale ou OO.
procdurale :
fonction / procdure , sous-systme (groupe de fonctions / procdures), systme
OO:
mthode, classe, cluster (groupe de classes), systme
tests fonctionnels
Tester toutes les fonctions du systme en mode boite noire.

tests de performance
valider que les diverses fonctions du systme sont ralises conformment aux exigences
de performance spcifies.
tests de marges
trouver lultime point de rupture. Faire rouler le systme un point de surcharge.
tests de reprise
valuer le comportement du systme suite une perte de ressources. (redmarrage,
commutation)
tests dacceptation
vrifier que le systme fonctionne correctement.
TESTS DINTGRATION
procdurale : intgration progressive un module la fois
OO : intgration progressive par groupe de classes la fois
approche : big bang, ascendante (bottom-up), descendante (top-down), en sandwich

TESTS BOITE BLANCHE


Flot de contrle
Reprsentation sous forme de graphe orient de tous les chemins possibles dans un
programmes.
Les noeuds sont des blocs dinstructions squentiels.
Les artes sont des transferts de contrle.
aide augmenter la couverture du code.

Complexit de McCabe
formule originelle
V(G) = E-N + 2 || N = nombre de noeuds & E = nombre de liens dans le graphe
Si toutes les dcisions sont binaires
V(G) = p+1 o p = nombre de noeuds de dcision binaires
La complexit cyclomatique donne exactement le nombre minimal de chemins indpendants
(nomms chemins de base, ou basis paths).

la complexit cyclomatique indique le nombre maximum de cas de tests requis pour


satisfaire le critre "dcisions/branches"

Tests de mutation
vrifie la qualit des tests sil dtecte un changement dans le code.
TESTS
1.
2.
3.
4.
5.

identifier le concept dintgrit applicable


identifier le niveau dintgrit dsir (1 4)
Identifier les activits de tests en fonction du niveau dintgrit.
Effectuer linventaire de la documentation ncessaire
tablir le contenu de chaque document de test

version partielle de la norme IEEE-829


1. Planification des tests
2. Conception des tests
3. Cas/procdure de tests suivi de lexcution des tests
4. Rapporter les rsultats
niveau 4 : catastrophique
niveau 3 : Critique
niveau 2 : Marginale
niveau 1 : Ngligeable

TMMI
modle de maturit pour les tests
source dinspiration CMM, CMMi & TMM
dfinition : Le processus consistant en toutes les activits du cycle de vie, statiques et
dynamiques, touchant la planification, la prparation et lvaluation de produits logiciels et
des artefacts associs, pour : dterminer quils satisfont leurs exigences, dmontrer quils
sont propices lutilisation, dtecter des dfauts

Vous aimerez peut-être aussi