Tests Et Qualité
Tests Et Qualité
Tests Et Qualité
Le 14/02/2007.
But:
Assurance que le logiciel ralise les fonctions attendues. Assurance que le logiciel fonctionne correctement. Diminution des cots lis au bug.
Plan
Introduction
Plan de test Outils de test automatique Place du test dans le cycle de vie Limites lies aux tests Recommandations pour laction future Conclusion
Introduction
Dfinition:
IEEE:
Le test est lexcution ou lvaluation dun systme ou dun composant par des moyens automatiques ou manuels, pour vrifier qu il rpond ses spcifications ou identifier les diffrences entre les rsultats attendus et les rsultats obtenus doracle: rsultats attendus dune excution. de 30 60% du cot total.
Notion Cots:
Niveau de dtail:
Test unitaire: procd permettant de s'assurer du fonctionnement correct d'une partie dtermine d'un logiciel ou d'une portion d'un programme. Test dintgration: a pour but de valider le fait que toutes les parties dveloppes indpendamment fonctionnent bien ensemble. Test non rgression: a pour but de vrifier que la nouvelle version du logiciel fonctionne de la mme manire que la version prcdente, et que les volutions de la nouvelle version n'ont pas amen directement ou indirectement un mauvais fonctionnement.
Niveau daccessibilit:
Boite
noire:
entre
Fonctionnalit
sortie
Boite
blanche:
a=b; if .. while..
Identifier tous les chemins logiques. Donnes de test produites partir dune analyse du code source.
Selon la caractristique :
test
fonctionnel :
Selon la caractristique :
test
Selon la caractristique :
test
Plan de test
Document dcrivant :
Objectifs du tests Technique de tests Environnement de test Responsabilits les tapes de tests et planning :
1. tablir les objectifs des tests 2. concevoir les jeux de tests 3. crire les jeux de tests 4. tester les jeux de tests 5. excuter les tests 6. valuer les rsultats des tests
Rduire le temps requis pour tester Amliorer la productivit des testeurs Obtenir un enregistrement organis et dtaill des tests excuts Amliorer la rptitivit ou la rutilisation des tests => Amliorer la qualit des tests => Amliorer la qualit de l'application
Mais un test automatique cote 10 fois plus cher quun test manuel.
Capture et re-excution des scripts raliss Sauvegarde des tests et des rsultats de tests Gnration de scripts de test Gnre toutes les cas possibles
Test de monte en charge Simulation denvironnement volution agressive de laccs aux ressources
Le test logiciel, lorsqu il est correctement mis en uvre, peut-tre omniprsent tout au long du cycle de dveloppement. Son but tant de trouver les dfauts du systme, il peut intervenir avant mme le dveloppement (ce que prne l une des pratiques de l eXtreme Programming) ou tout la fin, pour les tests de recette. Il existe donc plusieurs niveaux.
Projet
Expression de besoins
Formation
Stratgie de test
Conception & Spcifications
Plan de test
Dveloppements
Quand tester ?
Une phase de tests existe pour chaque tape du dveloppement (spcifications, conception gnrale, conception dtaille, dveloppement / codage) Exemple de modle de dveloppement : le cycle en V
Exhaustivit
Ex: Un logiciel avec 5 entres analogiques sur 8 bits admet 2^40 valeurs diffrentes en entre
Le test est un processus destructif : un bon test est un test qui trouve une erreur Les erreurs peuvent tre dues des incomprhensions de spcifications ou de mauvais choix dimplantation
Maintenabilit
Il existe une alternative aux tests manuels : lautomatisation des tests permet de rduire le cot des tests mais son utilisation est trop rare :
Tests
manuels = 85 % des erreurs Tests automatiques = 15 % des erreurs +Tester plus et plus souvent +Rutilisation de tests pour dautres projets + Rapidit, reproductibilit, fiabilit - Difficults trouver les bons tests - Difficults de maintenance
Choisir un outil de test adapt aux besoins du logiciel (simulateurs, analyseurs de performance, gnrateurs de donnes de test, calcul de mtriques, etc.) Mais attention ne pas oublier que lautomatisation ne peut tre complte et que les tests automatiques ne remplacent pas les tests manuels.
Le modle TMM a t introduit pour proposer une relle mthodologie de test logiciel:
Sparer le debugging du test Prendre en compte tous les aspects dun processus de test structur (cycle de vie, techniques, infrastructure, organisation) Rendre transparent ltat davancement de leffort de test Autres modles
Lapproche RBT est une mthode permettant dlaborer des stratgies de test fondes sur lvaluation des risques et des besoins prioritaires de lentreprise.
Elle consiste classer les exigences de tests par ordre de priorit, puis appliquer chaque test, une pondration en fonction du degr dexposition de la fonctionnalit (mesure de la probabilit doccurrence dun dysfonctionnement).
Cette mthode se substitue avantageusement, celles qui consistaient traditionnellement valuer les risques techniques et concentrer
leffort de test sur ces aspects.
Conclusion
Les tests et la qualit sont INDISSOCIABLES !!!! Les quipes qui prennent en compte la relation entre les tests et la qualit de leur livrable ont une avance considrable en terme de russite du projet On voit apparaitre le poste de Chef de projet de qualification qui a pour rle de vrifier la qualit de l'ensemble des livrables du projet
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
Test Logiciel, Maurice Rozenberg, Eyrolles, 1998