Public concerné et conditions d’accès
Avoir de
préférence suivi les UE du cycle préparatoire I1 en Informatique.
Complète l'UE de Informatique cycle préparatoire GLG 105 mais peut être
suivi indépendamment. S'insère dans le cursus des diplomes concernés
(RNCP, diplomes d'ingénieur, masters...).
Les auditeurs de ce cours
sont supposés avoir une bonne familiarité avec les méthodes et les
langages de programmation pratiqués dans l'industrie (C, C , Java,
COBOL, FORTRAN, Ada, etc.), ainsi qu'une connaissance générale, acquise
dans d'autres cours ou dans la pratique, des systèmes d'exploitation et
de l'architecture des applications.
Finalités de l’unité d’enseignement
Objectifs pédagogiques
La
professionalisation et la valorisation du test au sein de l'entreprise
sont des enjeux majeurs, motivés par une réalité économique.
Omniprésent tout au long du cycle de développement, le test logiciel
est une activité qui mobilise de nombreuses connaissances et
savoir-faire pour produire des tests pertinents.
L'unité
d'enseignement GLG 101 vise à donner les fondamentaux dans ce domaine
en forte croissance et prépare à la certification ISTQB (International
Software Testing Qualifications Board) du métier de testeur niveau
fondation, certification délivrée en France par le CFTL (Comité
Français des Tests Logiciels) auquel le CNAM est associé. Les cours se
déroulent par plages de 3h mélant apports fondamentaux et mise en
pratique.
Capacité et compétences acquises
Acquérir les bases des techniques de tests permettant la vérification systématique et la validation des programmes.
Organisation
Nombre de crédits enseignements : 6 ECTS
Modalités de validation : Examen.
Type de la formation : Cours
Contenu de la formation
La formation a pour but de :
- Savoir placer les tests dans le cycle de développement
- Savoir ce que sont et comment utiliser les tests statiques
- Maîtriser les techniques de conception de tests dynamiques
- Connaître les principes du management des tests
- Savoir différencier les différents outils de tests du marché
Les cours s'articulent autour des cinq modules suivants :
1. Fondamentaux des tests
- Origine des défauts logiciels
- Rôle des tests dans le développement et la maintenance
- Planification et contrôle des tests
- Exécutions et critères d'arrêt des tests
- Aspects sociologiques du métier de testeur
2. Tester pendant le cycle de vie logiciel
- Tests et modèles en V (ISO/CEI 12207) ainsi que de développement itératif
- Niveaux de tests : composants, intégration, système
- Cible des tests : fonctionnels / non fonctionnels, architecture logicielle, non régression
- Tests de maintenance
3. Techniques de test
- Techniques statiques et revues de code
- Techniques « boites noires »
- Techniques « boite blanches »
- Tests des transactions
- Impact du choix d'une technique de test
- Estimation de l'effort de test en fonction des techniques utilisées
- Etudes de cas
4. Gestion des tests
- Tâches du responsable des tests et des testeurs
- Estimation et planification des tests
- Suivi et contrôle du déroulement des tests
- Gestion de configuration
- Gestion des rapports d'anomalie
5. Outils de support aux tests
- Classification des outils de tests
- Bénéfices potentiels et risques liés aux outils de tests
- Outils d'aide aux tests statiques
- Outils d'aide à la spécification des tests
- Outils d'aide à l'exécution et au suivi des tests
- Introduire un outil dans une organisation
Bibliographie
Auteur |
Titre |
B. Beizer | Software testing techniques (Van Nostrand Reinhold) |
R. Binder | Testing object-oriented systems, models, patterns, and tools (Addison Wesley) 2000 |
IEEE | Software Engineering Standard Collection |
B. Boehm | Software engineering economics, 1981, et Software cost estimation with COCOMO II (Prentice Hall) 2002. |
J. Printz | Le Génie logiciel (Que sais-je n°2956, PUF) |