Un test dépendant d’un e‑mail comporte plusieurs horloges. Ne mesurer que l’intervalle entre deux actions du navigateur masque où le temps a été dépensé et peut faire passer un changement de boîte aux lettres pour une amélioration de l’application.
Enregistrez les étapes séparément
| Étape | Horodatage utile |
|---|---|
| Déclenchement de l’application | Lorsque le test demande un message de vérification. |
| Soumission de l’expéditeur | Lorsque le système d’envoi l’accepte ou le met en file d’attente, si observable. |
| Observation du destinataire | Lorsque le message correspondant devient disponible pour le test. |
| Résultat de la vérification | Lorsque l’application confirme l’état de compte prévu. |
Utilisez une horloge commune lorsque cela est possible, consignez les hypothèses de fuseau horaire et distinguez les horodatages manquants d’une durée nulle. Comparez des exécutions répétées dans les mêmes conditions avant de formuler des affirmations de performance.
Choisissez le mécanisme de mise à jour pris en charge
Les événements envoyés par le serveur (Server‑Sent Events) permettent à un serveur d’envoyer des mises à jour sur une connexion navigateur établie. Ils peuvent réduire le sondage répété du front‑end, mais la livraison dépend toujours du traitement sous‑jacent et du réseau. Voir l’aperçu de MDN. Un site utilisant les SSE ne signifie pas que son API publique expose le même flux.
Pour les tests d’API, suivez l’interface documentée. Si le sondage est requis, utilisez un back‑off limité, une échéance et une corrélation des messages au lieu d’une boucle serrée.
Mesurez les échecs ainsi que les moyennes
Rapportez les expirations, les accès rejetés, les erreurs d’expéditeur et les messages non appariés aux côtés des temps réussis. Une moyenne plus basse parmi les succès peut masquer une augmentation des échecs. Conservez des traces anonymisées pour le diagnostic sans consigner les jetons de vérification.
Contrôlez la charge de travail du test lui‑même
Limitez les jobs simultanés, annulez le travail après l’échéance et nettoyez les artefacts synthétiques. Le langage d’implémentation et la base de données n’établissent pas une capacité fixe ni ne rendent l’évolutivité gratuite ; mesurez les ressources consommées par la charge de travail réelle.