Accueil
Explorer
Soumettre la recherche
Mettre en ligne
S’identifier
S’inscrire
Publicité
Génie Logiciel : les tests
Signaler
Mohammed Amine Mostefai
Suivre
Lecturer at ESI, Senior Software Architect à Ecole Supérieure d'informatique
10 Jan 2012
•
0 j'aime
41 j'aime
×
Soyez le premier à aimer ceci
afficher plus
•
39,828 vues
vues
×
Nombre de vues
0
Sur Slideshare
0
À partir des intégrations
0
Nombre d'intégrations
0
Check these out next
Tests & recette - Les fondamentaux
COMPETENSIS
Automatisation des tests
Zhu Wei QI
Modèle en cascade
Ghodhbane Mohamed Amine
2 TUP
IbenbrahimSoumaya
Méthodologie 2 Track Unified Process
Zakaria Bouazza
Test logiciel
Youness Boukouchi
Qualité logiciel - Generalités
Christophe Rochefolle
Cours Génie Logiciel - Cours 2 - Cycles de vie
Mohammed Amine Mostefai
1
sur
55
Top clipped slide
Génie Logiciel : les tests
10 Jan 2012
•
0 j'aime
41 j'aime
×
Soyez le premier à aimer ceci
afficher plus
•
39,828 vues
vues
×
Nombre de vues
0
Sur Slideshare
0
À partir des intégrations
0
Nombre d'intégrations
0
Télécharger maintenant
Télécharger pour lire hors ligne
Signaler
Cette présentation est une introduction aux tests logiciels
Mohammed Amine Mostefai
Suivre
Lecturer at ESI, Senior Software Architect à Ecole Supérieure d'informatique
Publicité
Publicité
Publicité
Recommandé
Génie Logiciel - Cours 5 - analyse
Mohammed Amine Mostefai
5.5K vues
•
181 diapositives
Cours Génie Logiciel - Introduction
Mohammed Amine Mostefai
17.1K vues
•
36 diapositives
Introduction à la validation de logiciel
Jean-Paul CARMONA
19.9K vues
•
18 diapositives
Tests Logiciel
Nathaniel Richand
3.2K vues
•
22 diapositives
cycle de vie
Shili Mohamed
5.2K vues
•
17 diapositives
Présentation Tests Fonctionnels
DATANYWARE.com
13.6K vues
•
9 diapositives
Contenu connexe
Présentations pour vous
(20)
Tests & recette - Les fondamentaux
COMPETENSIS
•
47.8K vues
Automatisation des tests
Zhu Wei QI
•
8.3K vues
Modèle en cascade
Ghodhbane Mohamed Amine
•
28.3K vues
2 TUP
IbenbrahimSoumaya
•
8.6K vues
Méthodologie 2 Track Unified Process
Zakaria Bouazza
•
20.4K vues
Test logiciel
Youness Boukouchi
•
10.6K vues
Qualité logiciel - Generalités
Christophe Rochefolle
•
7.1K vues
Cours Génie Logiciel - Cours 2 - Cycles de vie
Mohammed Amine Mostefai
•
54.2K vues
Qualification Et Cycle De Vie Du Logiciel
danaobrest
•
22K vues
Cycles de vie d'un logiciel
Rabia AZIZA
•
33.3K vues
Génie Logiciel : Conception
Mohammed Amine Mostefai
•
9.1K vues
Guide tests fonctionnels
cvcby
•
3.4K vues
Automatisation des tests - objectifs et concepts - partie 1
Christophe Rochefolle
•
3.7K vues
Maven et industrialisation du logiciel
ENSET, Université Hassan II Casablanca
•
25.9K vues
CM processus-unifie
Yannick Prié (Enseignement)
•
4.4K vues
Cours uml
zimamouche1
•
2.8K vues
Cycle de développement du logiciel
Majid CHADAD
•
1.5K vues
Modèle en v
bouye2209
•
2.8K vues
Chp1 - Introduction aux méthodologies de Conception
Lilia Sfaxi
•
19.1K vues
2.2 cycles de vie
Harun Mouad
•
4.8K vues
Similaire à Génie Logiciel : les tests
(20)
Exposé qualité et test
Imen Turki
•
1.1K vues
Les tests fonctionnels avec Visual Studio 2010
Microsoft
•
1.9K vues
Exposée: Processus de test logiciel
Esaie88
•
140 vues
SharePoint Summit 2012 - Les tests automatisés et SharePoint 2010, c'est poss...
Sébastien Levert
•
1K vues
Atr2011 3 rex pour differentes facettes du lean- synthèse agile tour-21-09-...
Eric Hébert
•
1.7K vues
Valtech - Quel ROI pour ma transformation Agile ?
Valtech
•
3.7K vues
20111004 04 - Présentation ATDD
LeClubQualiteLogicielle
•
169 vues
Cours Génie Logiciel 2016
Erradi Mohamed
•
2K vues
Retour d'expérience TAA - 2011/03/29
Elapse Technologies
•
620 vues
Avis d'expert : Les Tests Logiciels
CloudNetCare
•
51K vues
Présentation du logiciel SOCLE
socle
•
1.5K vues
Initiation à l'agile
Mathieu Gandin
•
1.6K vues
Et si mon test était la spécification de mon application ? - JACOB - iWE - So...
TelecomValley
•
217 vues
Tra optimiser preparation_tests_v1
SQLI
•
1.6K vues
Genie logiciel eseo-v1.1-1spp
Laurent Guérin
•
3.3K vues
presentation Zest au JFTL 2014
Laurent PY
•
1K vues
Petit DéJeuner Industrialisation 13 10 2011 Eurosites
Hervé Leclerc
•
744 vues
Les cinq bonnes pratiques des Tests Unitaires dans un projet Agile
Denis Voituron
•
1.5K vues
Presentation tests d'acceptations automatisés sug v1.1
Jean-Emmanuel Houdu
•
2K vues
Test unitaires
Mohamed Akrouh
•
352 vues
Publicité
Plus de Mohammed Amine Mostefai
(20)
Utilisation de Sharepoint (Collaboration)
Mohammed Amine Mostefai
•
373 vues
Utilisation de Sharepoint 2013 - Personnalisation
Mohammed Amine Mostefai
•
305 vues
Utilisation Sharepoint (Listes)
Mohammed Amine Mostefai
•
498 vues
Utilisation de Sharepoint - Gestion de Documents
Mohammed Amine Mostefai
•
728 vues
Utilisation de Sharepoiunt - Introduction
Mohammed Amine Mostefai
•
476 vues
Pratiques agiles
Mohammed Amine Mostefai
•
1.3K vues
Introduction à Scrum
Mohammed Amine Mostefai
•
2.6K vues
Méthodes Agiles - La Méthode XP
Mohammed Amine Mostefai
•
1.8K vues
Le Manifeste Agile
Mohammed Amine Mostefai
•
2.5K vues
Méthodes Agiles - Généralités
Mohammed Amine Mostefai
•
1.1K vues
Introduction aux technologies mobiles
Mohammed Amine Mostefai
•
3.4K vues
Workflow Foundation - Cours 5
Mohammed Amine Mostefai
•
961 vues
Workflow Foundation Module 4
Mohammed Amine Mostefai
•
466 vues
Présentation cloud journée azure
Mohammed Amine Mostefai
•
2.1K vues
Wf module3
Mohammed Amine Mostefai
•
1.5K vues
Microsoft Workflow Foundation - Cours 2
Mohammed Amine Mostefai
•
1.6K vues
Introduction to Workflow Foundation
Mohammed Amine Mostefai
•
5.3K vues
Le Langage CSS
Mohammed Amine Mostefai
•
4K vues
Sécurisation des applications ASP.NET
Mohammed Amine Mostefai
•
3.7K vues
Présentation sharepoint 2013
Mohammed Amine Mostefai
•
18.7K vues
Génie Logiciel : les tests
COURS IGL
Cours 8 : COURS 8 Tests TESTS Mostefai Mohammed Amine – m_mostefai@esi.dz Batata Sofiane – s_batata@esi.dz 1
Cours 8 –
Tests OBJECTIFS DU COURS Objectifs du cours Présenter l’activité de tests Donner les différents types de tests Cours IGL, Copyright © 2011, ESI Introduire les tests en boîte noire Introduire les tests unitaires 2
INTRODUCTION
Section 2 : Le AU GÉNIE Section 1 : LOGICIEL Processus de Introduction Cours 8 Tests Tests Section 3 : Section 4 : Tests en Tests boîte noire unitaires 3 Cours IGL, Copyright © 2011, ESI
COURS IGL
Cours N° 8 Tests Section 1 : Introduction 4 Cours IGL, Copyright © 2011, ESI
SECTION 1 -
Cours 8 – Tests INTRODUCTION Qualité d’un logci Les tests sont le procédé de validation et de vérification d’un logiciel Cours IGL, Copyright © 2011, ESI Les tests assurent que le produit est conforme à ses spécifications Les tests assurent que le produit fait ce qu’on attend de lui Les tests identifient les bugs, les erreurs ou les défaillances les plus importantes dans le but de les réparer Une défaillance importante est celle qui affecte l’utilisabilité du produit 5
SECTION 1 -
Cours 8 – Tests INTRODUCTION Qualité de logiciels Cours IGL, Copyright © 2011, ESI Qualité Qualité Qualité du fonctionnelle structurelle logiciel 6
SECTION 1 -
Cours 8 – Tests INTRODUCTION Qualité d’un logiciel La qualité fonctionnelle assure que le produit est conforme à ses spécifications fonctionnelle. Cours IGL, Copyright © 2011, ESI La qualité structurelle concerne la conformité aux spécifications non fonctionnelles (par exemple robustesse, rapidité, performance) et aussi à l’analyse de la structure interne du produit (code source, architecture,…) L’objectif des tests n’est pas d’améliorer la qualité mais plutôt de la mesurer 7
SECTION 1 -
Cours 8 – Tests INTRODUCTION Objectifs des tests Cours IGL, Copyright © 2011, ESI Vérification Validation Recensement des défaillances 8
SECTION 1 -
Cours 8 – Tests INTRODUCTION Objectifs des tests La vérification consiste à vérifier une spécification par rapport aux attentes techniques. Par exemple, après la validation d’une facture, retrouver le champ « valide » à Cours IGL, Copyright © 2011, ESI « true » dans la base de données La validation consiste à vérifier une spécification par rapport aux attentes métier. Par exemple, après la validation d’une facture, la quantité du produit vendu doit décroître Une défaillance est une variation entre les résultats actuels et les résultats attendus. L’origine de la défaillance peut être dans l’expression de besoins, la conception, l’analyse ou l’implémentation. 9
SECTION 1 -
Cours 8 – Tests INTRODUCTION Objectifs des tests Les tests répondent aux questions suivantes : Est-ce que ça Est-ce que c’est Est-ce que ça Cours IGL, Copyright © 2011, ESI marche comme conforme aux correspond aux prévu ? spécifications ? attentes du client ? Est-ce que c’est Est-ce que ça Est-ce que le client compatible avec s’adapte à un apprécie ? les autres nombre important systèmes ? d’utilisateurs ? Quels sont les Est-ce que c’est points à améliorer prêt pour le ? déploiement ? 10
SECTION 1 -
Cours 8 – Tests INTRODUCTION Objectifs des tests Les réponses à ces questions vont servir à : Economiser le temps Cours IGL, Copyright © 2011, ESI et l’argent en Rendre le Augmenter la identifiant développement plus satisfaction du client rapidement les efficace défaillances Identifier les Identifier les Correspondre le modifications à composants et les résultats aux attentes inclure dans les modules réutilisables prochaines versions Identifier les lacunes des développeurs 11
SECTION 1 -
Cours 8 – Tests INTRODUCTION Principes de tests Commencer par les cas généraux avant les cas particuliers Cours IGL, Copyright © 2011, ESI Commencer par les cas prioritaires Quand une fonction est signalée défaillante, la cause n’est pas forcément le code 12
SECTION 1 -
Cours 8 – Tests INTRODUCTION Portée des tests Les tests doivent concerner les éléments suivants : Cours IGL, Copyright © 2011, ESI Conformité aux Conformité aux Exigences spécifications spécifications juridiques fonctionnelles techniques Les restriction et recommandations Culture et standards Le code source des administrateurs de l’entreprise du système Propriétés La configuration culturelles et matérielle linguistiques 13
COURS IGL
Cours N° 8 Section 1 : Introduction, Tests débat 05 mns 14 Cours IGL, Copyright © 2011, ESI
COURS IGL
Cours N° 8 Section 2 : Le processus de Tests tests 15 Cours IGL, Copyright © 2011, ESI
SECTION 2 –
LE Cours 8 – Tests PROCESSUS DE TESTS L’équipe de testeurs Les tests ne sont pas le travail d’un seul homme mais celui d’une équipe Cours IGL, Copyright © 2011, ESI La taille de cette équipe dépend de la taille et de la complexité du projet Les développeurs doivent avoir un rôle dans les tests mais d’une façon réduite Le testeur doit être minutieux, critique (pas au sens jugement), curieux doté d’une bonne communication 16
SECTION 2 –
LE Cours 8 – Tests PROCESSUS DE TESTS L’équipe de testeurs Les testeurs doivent poser des questions que les développeurs peuvent trouver embarrassantes Cours IGL, Copyright © 2011, ESI Comment Que veut dire pouvez-vous dire pour vous « ça que ça marche ? marche » ? Pourquoi ça Qu’est-ce qui a marchait et que causé le mauvais ça ne marche fonctionnement ? plus ? 17
SECTION 2 –
LE Cours 8 – Tests PROCESSUS DE TESTS L’équipe de testeurs Le coordinateur de tests crée les plans de tests et les spécifications de tests sur la base des spécifications techniques et fonctionnelles Cours IGL, Copyright © 2011, ESI Les testeurs exécutent les tests et documentent les résultats 18
SECTION 2 –
LE Cours 8 – Tests PROCESSUS DE TESTS Catégories de tests Cours IGL, Copyright © 2011, ESI Tests en Tests en boîte noire boîte blanche 19
SECTION 2 –
LE Cours 8 – Tests PROCESSUS DE TESTS Catégories de tests Les test en boîte noire s’exécutent en ignorant les mécanismes internes du produit Cours IGL, Copyright © 2011, ESI Les tests en boîte blanche sont des tests qui prennent les mécanismes internes en considération Dans les tests en boîte noire, le testeur n’accède pas au code source 20
SECTION 2 –
LE Cours 8 – Tests PROCESSUS DE TESTS Types de tests Cours IGL, Copyright © 2011, ESI Tests du Tests Tests unitaires système et de d’intégration fonctionnement Tests Tests de Béta-Tests d’acceptation régression 21
SECTION 2 –
LE Cours 8 – Tests PROCESSUS DE TESTS Tests unitaires Les tests unitaires sont les tests de blocs individuels (par exemple des blocs de code) Cours IGL, Copyright © 2011, ESI Les tests unitaires sont généralement écrits par les développeurs eux-mêmes pour la validation de leurs classes et leurs méthodes Les tests unitaires sont exécutés généralement par les machines 22
SECTION 2 –
LE Cours 8 – Tests PROCESSUS DE TESTS Tests d’intégration Exécuté en boîte noire ou boîte blanche Les tests d’intégration vérifient que les composants Cours IGL, Copyright © 2011, ESI s’intègrent bien avec d’autres composants ou systèmes Les tests d’intégration vérifient aussi que le produit est compatible avec l’environnement logiciel et matériel du client 23
SECTION 2 –
LE Cours 8 – Tests PROCESSUS DE TESTS Tests fonctionnels S’exécute en boîte noire Vérifie que le produit assure les fonctionnalités Cours IGL, Copyright © 2011, ESI spécifiées dans les spécifications fonctionnelles 24
SECTION 2 –
LE Cours 8 – Tests PROCESSUS DE TESTS Tests système S’exécute en boîte noire S’oriente vers les spécifications non fonctionnelles Cours IGL, Copyright © 2011, ESI Composé de plusieurs tests : Tests de stress : tester le produit au-delà des attentes non fonctionnelles du client. Par exemple, un système de sauvegarde qui doit tout sauvegarder deux fois par jour, le tester en mode trois fois par jour. Tests de performance : évaluation par rapport à des exigences de performances données. Par exemple, un moteur de recherche doit renvoyer des résultats en moins de 30 millisecondes. 25
SECTION 2 –
LE Cours 8 – Tests PROCESSUS DE TESTS Tests système Tests de chargement : vérifie que l’application fonctionne dans des conditions normales (contraire aux tests de stress) Cours IGL, Copyright © 2011, ESI Tests d’utilisabilité : vérifier les exigences d’apprentissage demandées à un utilisateur normal pour pouvoir utiliser le produit 26
SECTION 2 –
LE Cours 8 – Tests PROCESSUS DE TESTS Tests d’acceptation S’exécute en boîte noire Les tests d’acceptation sont des tests formalisés par le Cours IGL, Copyright © 2011, ESI client qui sont exigés par le client pour qu’il accepte le produit 27
SECTION 2 –
LE Cours 8 – Tests PROCESSUS DE TESTS Tests de régression Les tests de régression sont un sous-ensemble des tests originaux Cours IGL, Copyright © 2011, ESI Les tests de régression vérifient qu’une modification n’a pas eu d’effets de bord sur le produit Les tests de régression sont utiles parce que la ré- exécution de tous les tests est très coûteuse 28
SECTION 2 –
LE Cours 8 – Tests PROCESSUS DE TESTS Béta-Tests Quand un produit est quasiment terminé, il est distribué gratuitement à certains de ses utilisateurs Cours IGL, Copyright © 2011, ESI Ces utilisateurs sont appelés testeurs béta Ces utilisateurs vont utiliser le produit et reporter tout éventuel disfonctionnement de celui -ci 29
SECTION 2 –
LE Cours 8 – Tests PROCESSUS DE TESTS Comparaison entre les tests Test Portée Catégorie Exécutant Unitaires Petites portions du code Boîte blanche Développeur Cours IGL, Copyright © 2011, ESI source Machine Intégration Classes / Composants Blanche / noire Développeur Fonctionnel Produit Boîte noire Testeur Système Produit / Environnement Boîte noire Testeur simulé Acceptation Produit / Environnement Boîte noire Client réel Beta Produit / Environnement Boîte noire Client réel Régression N’importe lequel Blanche / noire N’importe 30
SECTION 2 –
LE Cours 8 – Tests PROCESSUS DE TESTS Le plan de tests La planification des tests doit se faire dans les premières phases du projet Cours IGL, Copyright © 2011, ESI Le plan de tests est un document obligatoire déterminant le déroulement des tests durant le projet Le tableau suivant indique le contenu d’un plan de test selon le standard « American National Standards Institute and Institute for Electrical and Electronic Engineers Standard 829/1983 for Software Test Documentation” 31
SECTION 2 –
LE Cours 8 – Tests PROCESSUS DE TESTS Le plan de tests Élément Description Objectif Responsabilités Acteurs et affectation Décrit qui fait quoi dans les tests. Cours IGL, Copyright © 2011, ESI Assure le suivi et les affectations Tests Portée de tests, plannings, Définit le processus et détaille les durées et priorités actions à entreprendre Communication Plan de communication Tout le monde doit savoir ce qu’il doit savoir avant les tests et ce qu’il doit faire savoir après les tests Analyse de Éléments critiques à Identification des domaines qui risques tester sont critiques dans le projet Traçage des Documentation des Documenter les défaillances et les défaillance défaillances détails les concernant 32
SECTION 2 –
LE Cours 8 – Tests PROCESSUS DE TESTS Priorisation des défaillances Le plan de tests détermine la priorisation des défaillances Cours IGL, Copyright © 2011, ESI La priorisation facilite la communication entre développeurs et testeurs ainsi que l’affectation et la planification des tâches 33
SECTION 2 –
LE Cours 8 – Tests PROCESSUS DE TESTS Priorisation des défaillances Par exemple, une priorisation de 1 à 6 est souvent adoptée Cours IGL, Copyright © 2011, ESI Priorité Description 1 – Fatal Impossible de continuer les tests à cause de la sévérité des défaillances 2- Critique Les tests peuvent continuer mais l’application ne peut passer en mode production 3- Majeur L’application peut passer en mode production mais des exigences fonctionnelles importantes ne sont pas satisfaites 4- Medium L’application peut passer en mode production mais des exigences fonctionnelles sans très grand impact ne sont pas satisfaites 34
SECTION 2 –
LE Cours 8 – Tests PROCESSUS DE TESTS Priorisation des défaillances Par exemple, une priorisation de 1 à 6 est souvent adoptée Cours IGL, Copyright © 2011, ESI Priorité Description 5- Mineur L’application peut passer en mode production, la défaillance doit être corrigée mais elle est sans impact sur les exigences métier 6- Cosmétique Défaillances mineures relatives à l’interface (couleurs, police, …) mais n’ayant pas une relation avec les exigences du client 35
COURS IGL
Cours N° 8 Section 2 : Le processus de Tests tests, débat 10 mns 36 Cours IGL, Copyright © 2011, ESI
COURS IGL
Cours N° 8 Section 3 : Tests en boîte Tests noire 37 Cours IGL, Copyright © 2011, ESI
SECTION 3 –
TESTS EN Cours 8 – Tests BOÎTE NOIRE Introduction Les tests en boîte noire détermine si un produit fait ce qu’on attend de lui indépendamment de sa structure interne Cours IGL, Copyright © 2011, ESI Plusieurs tests sont effectués en boîte noire tels que les tests fonctionnels et les tests d’acceptation Les tests en boîte noire déterminent les fonctions manquantes ou mal implémentées, les erreurs d’interface, des anomalies de performance ou de comportement, les bugs et les crashs Quels que soit la consistance ou le volume des tests, aucune garantie n’est donnée sur l’absence d’erreurs 38
SECTION 3 –
TESTS EN Cours 8 – Tests BOÎTE NOIRE Introduction Il vaut mieux que les testeurs soient des personnes différentes des programmeurs Cours IGL, Copyright © 2011, ESI Les testeurs s’intéressent à une fonction en terme d’entrée et de sorties Entrée Test Sortie 39
SECTION 3 –
TESTS EN Cours 8 – Tests BOÎTE NOIRE Cas de test (Test Case) Un cas de test est un ensemble d’entrées de tests, de conditions d’exécution et de résultats attendus pour un objectif particulier tel que la conformité du programme Cours IGL, Copyright © 2011, ESI avec une spécification données 40
SECTION 3 –
TESTS EN Cours 8 – Tests BOÎTE NOIRE Anatomie d’un cas de test ID Description Cours IGL, Copyright © 2011, ESI Priorité Préconditions Scénario Résultats attendus Résultats actuels Remarques 41
SECTION 3 –
TESTS EN Cours 8 – Tests BOÎTE NOIRE Anatomie d’un cas de test L’ID est un numéro unique qui permet la traçabilité des cas de test, les lier à des spécifications ou à d’autres cas de test Les préconditions déterminent les conditions nécessaires à Cours IGL, Copyright © 2011, ESI un cas de test. Elles indiquent aussi les cas de test qui doivent être exécutés précédemment La description est un texte décrivant le tests et ses attentes Le scénario détermine les étapes détaillées à suivre par le testeur Les résultats attendus sont attendus de l’exécution du scénario Les résultats actuels sont les vrais résultats obtenus, s’ils sont différents des résultats attendus, une défaillance est signalée Les remarques sont signalées par le testeur pour ajouter des information concernant une exécution donnée 42
SECTION 3 –
TESTS EN Cours 8 – Tests BOÎTE NOIRE Anatomie d’un cas de test Le scénario est composé de plusieurs actions numérotées Cours IGL, Copyright © 2011, ESI Chaque action peut avoir un résultat attendu L’exécution de test affecte un résultat actuel à chaque étape attendant un résultat Si chaque résultat actuel est conforme au résultat attendu alors le test réussit sinon le test échoue 43
SECTION 3 –
TESTS EN Cours 8 – Tests BOÎTE NOIRE Exemple ID Description Préconditions Scénario Résultats Résultats Remarques attendus actuels Cours IGL, Copyright © 2011, ESI 1 Ouverture d’un Existence d’un 1- Cliquez sur le 2- Une boîte document document bouton « Ouvrir » d’ouverture de 2- Sélectionnez le fichiers s’affiche fichier désiré 3- Le Document 3- Appuyez sur OK est ouvert et prêt à être manipulé 2 Impression TC 1 1- Cliquez sur le 1- La boîte de d’un document bouton imprimer configuration 2- Sélection la d’imprimante config puis cliquer s’affiche sur « Imprimer » 2- Le document sort sous format papier 44
SECTION 3 –
TESTS EN Cours 8 – Tests BOÎTE NOIRE Campagne de tests Une campagne de tests sélectionne un certain nombre de cas de tests sémantiquement relatifs et les exécute Cours IGL, Copyright © 2011, ESI Chaque campagne de tests a un objectif tracé : validation du produit, performance, … etc. 45
SECTION 3 –
TESTS EN Cours 8 – Tests BOÎTE NOIRE Qu’est-ce qu’un bon plan de tests ? Un bon plan de tests minimise les cas de tests et maximise la probabilité de détection des défaillances Cours IGL, Copyright © 2011, ESI 46
COURS IGL
Cours N° 8 Section 3 : Tests en boîte Tests noire, débat 10 mns 47 Cours IGL, Copyright © 2011, ESI
COURS IGL
Cours N° 8 Tests Section 4 : Tests unitaires 48 Cours IGL, Copyright © 2011, ESI
S EC T
I O N 4 – T E S T S Cours 8 – Tests U N I TA I R ES Introduction Les tests unitaires sont des tests en boîte blanche Les tests unitaires sont composé d’un ensemble de Cours IGL, Copyright © 2011, ESI classes appelées « classes de test » Ces classes valident que des portions de code répondent à un certain besoin Les tests unitaires sont importants car ils permettent de détecter le maximum de défaillance avant les tests en boîte noire et qu’ils peuvent s’exécuter d’une manière automatique 49
S EC T
I O N 4 – T E S T S Cours 8 – Tests U N I TA I R ES Objectifs Les tests unitaires ont deux objectifs : « couverture de code » et « couverture de données » Cours IGL, Copyright © 2011, ESI La couverture du code stipule de tester chaque ligne de code écrite (appel de fonction, boucles, décisions, décisions multiples,…) La couverture des données oriente les tests vers les données (données valides, données invalides, accès aux éléments en dehors de la capacité d’un tableau, peu de données, trop de données,… etc) 50
S EC T
I O N 4 – T E S T S Cours 8 – Tests U N I TA I R ES Caractéristiques Les tests unitaires doivent être conforme à l’acronyme FIRST: Cours IGL, Copyright © 2011, ESI FAST : un test unitaire doit s’exécuter rapidement INDEPENDANT: chaque test doit être indépendant des autres REPEATABLE: chaque test peut être répété autant de fois que voulu SELF-VALIDATING: Un test se valide lui-même par un succès ou par un échec TIMELY: On écrit les tests quand on en a besoin 51
S EC T
I O N 4 – T E S T S Cours 8 – Tests U N I TA I R ES Exemple public class Calculator { public int add(int x, int y) Cours IGL, Copyright © 2011, ESI { return x + y; } public int multi(int x, int y) { return x*y; } } 52
S EC T
I O N 4 – T E S T S Cours 8 – Tests U N I TA I R ES Exemple // tester la classe public class CalculatorTest { Cours IGL, Copyright © 2011, ESI // tester l’addition public int addTest() { // valeurs en entrée int a = 15; int b = 18; Calculator calc = new Calculator(); int c = calc.Add(a,b); // résultat attendu et résultat actuel assertEquals(33, c); } } 53
COURS IGL
Cours N° 8 Section 4 : Tests unitaires, Tests débat (05 mns) 54 Cours IGL, Copyright © 2011, ESI
Cours 6 –
Introduction aux BIBLIOGRAPHIE architectures de logiciels Bibliographie Software Development and Professional Practice, John Dooley, APress, 2010 Cours IGL, Copyright © 2011, ESI Software Testing Fundamentals —Concepts, Roles, and Terminology - John E. Bentley, Wachovia Bank, Charlotte NC, 2002 Testing Overview and Black-Box Testing Techniques, Laurie Williams 2006 55
Publicité