Aller au contenu

Tests de performance et de charge

"Un système peut être fonctionnel… et inutilisable s’il est trop lent."

Principe du testing de performance

Objectifs pédagogiques

À la fin de cette section, vous serez capable de :

  • expliquer ce que sont les tests de performance et de charge
  • distinguer les principaux types de tests de performance
  • identifier les indicateurs clés à mesurer
  • comprendre quand et pourquoi les réaliser
  • illustrer ces tests à l’aide du fil rouge MyEvents

Définition

Les tests de performance et de charge visent à évaluer :

  • la rapidité du système
  • sa stabilité dans le temps
  • sa capacité à supporter une charge croissante
  • son comportement en situation de stress

👉 Contrairement aux tests fonctionnels,
ils ne vérifient pas ce que fait le système, mais comment il le fait.


Pourquoi sont-ils indispensables ?

Un système peut : - fonctionner correctement avec peu d’utilisateurs - devenir lent, instable ou inutilisable sous charge

Les tests de performance permettent de :

  • détecter les goulots d’étranglement
  • anticiper les pics de charge
  • éviter les incidents en production
  • garantir une expérience utilisateur acceptable
Image title
Test de performance

“Ils évaluent la rapidité, la stabilité et l'évolutivité de l'application en conditions normales ou extrêmes. Ils sont moins fréquents que les tests unitaires ou d'intégration”


Principaux types de tests de performance

Test de performance

  • mesure les temps de réponse
  • vérifie le respect des objectifs (SLA)

Exemples : - temps de chargement d’une page - temps de réponse d’une API


Test de charge

  • évalue le comportement sous une charge normale ou attendue
  • simule un nombre réaliste d’utilisateurs

Objectif :

vérifier que le système supporte l’utilisation prévue


Test de stress

  • pousse le système au-delà de ses limites
  • observe son comportement en cas de surcharge

Objectif : - identifier le point de rupture - vérifier la capacité de récupération


Test d’endurance (ou de longévité)

  • exécute le système sur une longue durée
  • détecte les problèmes de mémoire, de ressources, de stabilité

Indicateurs mesurés

Les tests de performance s’appuient sur des métriques objectives :

  • temps de réponse
  • débit (requêtes/seconde)
  • taux d’erreur
  • consommation CPU / mémoire
  • temps de montée en charge
  • stabilité dans le temps

Exemple fil rouge – MyEvents

Dans l’application MyEvents, les tests de performance sont critiques, notamment pour :

  • l’achat de billets
  • la consultation d’événements populaires
  • l’envoi massif de notifications

Exemple de test de charge

Scénario : - 1 000 utilisateurs consultent un événement en même temps - 300 utilisateurs achètent un billet simultanément

Vérifications attendues :

  • le temps de réponse reste acceptable
  • aucun paiement n’est perdu
  • le système reste stable
  • aucune erreur critique n’apparaît

👉 Ces tests permettent d’anticiper les pics liés à un événement populaire.


Lien avec les autres types de test

Les tests de performance :

  • complètent les tests fonctionnels
  • s’appuient sur un environnement de test maîtrisé
  • influencent la stratégie de test
  • sont souvent automatisés

Ils sont généralement exécutés : - avant une mise en production - après une évolution majeure - lors de changements d’infrastructure


À retenir

  • un système fonctionnel n’est pas forcément performant
  • la performance se mesure, elle ne se devine pas
  • ces tests réduisent les risques en production
  • ils sont essentiels pour les systèmes à forte charge

⬅ Tests de régression ➡ Tests de sécurité