Yinoussa Adagolodjo

Tests et Maintenance

Méthodologies de test logiciel et maintenance des systèmes

🧪 Tests et Maintenance

Méthodologies de test logiciel et maintenance des systèmes

🎓 Niveau Graduate ⏱️ 8h TP + 21.1h TD 🎯 Tests logiciels ⚠️ En développement
⚠️
Statut : Cours en développement
Ce cours est actuellement en phase de développement. Le contenu et les modalités peuvent évoluer.
📋

Présentation du cours

Ce cours aborde les méthodologies de test logiciel et les pratiques de maintenance des systèmes informatiques. Les étudiants apprendront à concevoir et implémenter des stratégies de test efficaces, à automatiser les processus de validation et à maintenir la qualité des systèmes en production. Une approche pratique couvre les outils modernes et les bonnes pratiques de l'industrie.

📊 Informations générales

Durée : 8h de travaux pratiques + 21.1h de travaux dirigés
Volume de travail personnel estimé : 35-40 heures
Langue d'enseignement : Français
Évaluation : Note de rapport
Statut : En développement

✅ Prérequis

💻
Programmation orientée objet

Java, C#, Python ou équivalent, concepts d'architecture logicielle

🏗️
Génie logiciel

Cycle de développement, méthodologies Agile, gestion de versions

🗄️
Systèmes d'information

Bases de données, architectures distribuées, services web

Tests unitaires Tests d'intégration Automatisation CI/CD Maintenance prédictive Quality Assurance
🎯

Objectifs pédagogiques

À l'issue de ce cours, les étudiants seront capables de :

🧪 Concevoir des stratégies de test

Élaborer des plans de test complets couvrant les différents niveaux (unitaire, intégration, système).

⚙️ Automatiser les tests

Mettre en place des pipelines d'intégration continue avec tests automatisés.

📊 Analyser la qualité logicielle

Utiliser des métriques de qualité et des outils d'analyse statique du code.

🔧 Maintenir les systèmes

Appliquer les bonnes pratiques de maintenance préventive et corrective.

🐛 Déboguer efficacement

Maîtriser les techniques de débogage et d'analyse des défauts logiciels.

📈 Optimiser les performances

Identifier et résoudre les problèmes de performance et de scalabilité.

📅

Planning du cours

Module 1

Fondements des tests logiciels

Introduction aux tests, types de tests, pyramide des tests, stratégies de validation.
Module 2

Tests unitaires et frameworks

JUnit, pytest, mocking, test-driven development (TDD).
Module 3

Tests d'intégration et système

API testing, tests end-to-end, tests de charge et performance.
Module 4

Automatisation et CI/CD

Jenkins, GitLab CI, GitHub Actions, déploiement automatisé.
Module 5

Maintenance et évolution

Refactoring, gestion de la dette technique, monitoring en production.
📊

Modalités d'évaluation

100%
Note de rapport
Projet complet incluant stratégie de test, implémentation, automatisation et documentation.
📚

Ressources et outils

🛠️

Outils de test

  • JUnit, pytest, Jest
  • Selenium, Cypress
  • JMeter, k6
🔄

Plateformes CI/CD

  • Jenkins, GitLab CI
  • GitHub Actions
  • Docker, Kubernetes
📞

Contact & encadrement

👨‍🏫 Responsable du cours : Dr. Yinoussa Adagolodjo
✉️ Email : Remplir formulaire de contact sur la page d'accueil
🏢 Bureau : Bâtiment Polytech, Université de Lille
Permanence : Sur rendez-vous (contact par email)