Professional Documents
Culture Documents
Ralise par:
05/11/2007
Sommaire:
Definition Classification des tests
oClassification selon le niveau de dtail Tests unitaires(TDD) Tests dintgrations Tests de non rgression oclassification selon le niveau daccessibilit classification Bote noire Bote blanche
Recapitulatif
05/11/2007 test des logiciels 2
Dfinitions
Le test est lexcution ou lvaluation dun systme ou dun composant, par des moyens automatiques ou manuels, pour vrifier quil rpond ses spcifications ou identifier des diffrences entre les rsultats attendus et ceux obtenus
Xanthakis et al.
05/11/2007
05/11/2007
05/11/2007
05/11/2007
Tests unitaires
Test de composants isols. Ce test permet de dmontrer que chaque module effectue toute la fonction prvue et seulement cette fonction. On peut distinguer dans ces tests unitaires :
Les tests de logique (recherche d'erreur, vrification de l'enchanement correct des branches parcourues) Les tests de calcul (vrification des rsultats des calculs, des performances, de l'exactitude des algorithmes).
05/11/2007
05/11/2007
Path p = new Path("/usr/include/stdlib.h"); assertEquals("stdlib.h", p.getLastComponent()); ou encore : Path p = new Path("/"); assertEquals("", p.getLastComponent()); En crivant ces quelques tests, nous avons implicitement commenc dfinir l'interface de notre classe. Nous pouvons d'ailleurs en crire une premire version : public class Path { public Path(String pathName) { //... } public String getLastComponent() { //... }}
05/11/2007
Prsentation de JUnit
JUnit dfinit trois notions principales : Un TestCase est typiquement une classe de test. Chacune de nos classes de test drive de cette classe, qui elle-mme drive de la classe Test. Une TestSuite est un ensemble de tests. Elle drive galement de la classe Test et contient des instances de la classe Test (suivant le Design Pattern "Composite"), ce qui lui permet de contenir indiffremment des TestCase ou d'autres TestSuite :
05/11/2007
10
05/11/2007
11
05/11/2007
12
05/11/2007
13
Test dintgration
Dfinition: Un test d'intgration est un test qui se droule dans une phase d'un projet informatique suivant les tests unitaires. Il consiste, une fois que les dveloppeurs ont chacun valid leurs dveloppements ou leurs correctifs, regrouper leurs modifications ensemble dans le cadre d'une livraison.
05/11/2007
14
Test dintgration
Caractristiques: L'intgration a pour but de valider le fait que toutes les parties dveloppes indpendamment fonctionnent bien ensemble. L'intgration fait appel en gnral un systme de contrle de versions, et ventuellement des programmes d'installation. Pour les applications utilisant les nouvelles technologies et donc des ateliers de gnie logiciel (Eclipse - Visual Studio - JBuilder - JDeveloper...), les tests dintgration ont volu vers de lintgration continue.
05/11/2007
15
05/11/2007
16
05/11/2007
17
Test Fonctionnel
Le test par classe dquivalence consiste regrouper les valeurs dentre qui devraient produire le mme type de rsultat Le test se fait alors avec un reprsentant de la classe dquivalence pris au hasard
Le test au limite complte le test par classe dquivalence en prfrant choisir un reprsentant de la classe ses limites (quand cela un sens)
Test Fonctionnel
Tester un fragment des combinaisons de valeurs qui garantissent que chaque combinaison de 2 variables est test Exemple : 4 variables avec 3 valeurs possibles chacune V1 a e i V2 b f j V3 c g k V4 d h l
Les paires (v1, v2) (v1, v3) (v1, v4) (v2, v3) (v2, v4) (v3, v4) Les combinaisons : 6*9=72 Le nombre de tests augmente trs vite dans lapproche de Pairwise avec les triplets , les quadruplets, etc
Test Fonctionnel
Principe du test alatoire
Utilisation dune fonction de calcul pour slectionner les DT Fonction alatoire : choix alatoire dans le domaine de la donne dentre ou utilisation dune loi statistique sur le domaine
Test structurel
Test structurel statique : pas dexcution relle
Le test statique est appliqu sur une description du programme ou directement sur le texte du programme mais sans excuter ce dernier
Estimation de la complexit Statistiquement, la complexit dun programme est corrle avec le nombre de ses dfauts (complexit cyclomatique ) MacCabe propose de refaire le codage de tout programme dont la complexit cyclomatique est suprieur 10 en exceptant les programmes o ils ont beaucoup dinstruction de branchement
Selon la caractristique
test fonctionnel : vrifie que le programme est conforme aux
spcifications
Selon la caractristique
Mthodes du test fonctionnel Test dterministe Analyse partitionnelle des domaines des donnes dentre et test aux limites Test combinatoire Algorithmes Pairwise Test alatoire Gnration automatique de tests partir dune spcification
Selon la caractristique
Automatisation des tests fonctionnels lorsque des applications doivent fonctionner sur plusieurs plates-formes, la charge des tests manuels crot proportionnellement en multipliant les risques derreurs humaines et dincohrences susceptibles daltrer les rsultats finaux.
Selon la caractristique
Lautomatisation du processus de test optimise la qualit logicielle et lefficience oprationnelle elle prsente les avantages long terme suivants : Remploi Prvisibilit et cohrence Productivit
Selon la caractristique
test de performance (ou benchmark) : mesurer les temps de rponse d'un systme en fonction de sa sollicitation
Test de tenue en charge Test de capacit Test en stress Test aux limites
Selon la caractristique
Outillage ncessaire Comme il s'agit de simuler un nombre d'utilisateurs en gnral important, il est videmment ncessaire d'automatiser ces tests. Une plate-forme de test de performances va gnralement comporter : Un injecteur Des sondes
Rcapitulatif
TBN : test boite noir ou test fonctionnel TBB : test boite blanche ou test structurel
05/11/2007
36
Bibliographie
www.testissimo.com http://fr.wikipedia.org/wiki/Test_%28informatique%29 http://fr.wikipedia.org/wiki/Test_unitaire http://fr.wikipedia.org/wiki/Test_d%27int%C3%A9gration http://fr.wikipedia.org/wiki/Non-r%C3%A9gression http://fr.wikipedia.org/wiki/Bo%C3%AEte_noire_%28informatique%29 http://fr.wikipedia.org/wiki/M%C3%A9thode_formelle_%28informatique%29 http://master-info.univ-fcomte.fr/m2.pro/cours/coursTestBL.pdf http://dico.developpez.com/html/1128-Projet-plan-de-test.php http://dico.developpez.com/html/1139-Projet-tests.php http://dico.developpez.com/html/1125-Projet-niveaux-de-test.php
05/11/2007
37
05/11/2007
38