Qu'est-ce que la durée dans les tests de charge

Qu'est-ce que la durée dans les tests de charge

La propriété Durée représente la durée totale de votre test de charge, pendant combien de temps les clients solliciteront votre application.

Cela est indépendant de tout temps de montée en charge.

Ce paramètre est similaire également pour les tests de charge JMeter.

Durée

Graphique de durée du test

Note : Vous pouvez faire glisser le paramètre Durée pour mieux visualiser le test de charge que vous êtes sur le point d'exécuter.

Comment la durée est liée au temps de montée en charge

Le temps total d'un test de charge se compose de deux paramètres qui travaillent ensemble : le temps de montée en charge fait monter progressivement vos utilisateurs virtuels, et la durée correspond au temps pendant lequel le test continue de s'exécuter une fois démarré. En pratique, la période de montée en charge se déroule en premier, et la durée s'exécute ensuite par-dessus, donc le temps total d'exécution de votre test correspond approximativement au temps de montée en charge plus la durée.

Par exemple, avec un temps de montée en charge de 60 secondes et une durée de 300 secondes, les utilisateurs virtuels arrivent progressivement pendant les 60 premières secondes, puis le test continue à générer de la charge avec tous les utilisateurs virtuels actifs pendant 300 secondes supplémentaires, pour un temps total écoulé d'environ 360 secondes. C'est pourquoi la durée seule ne vous indique pas la longueur totale d'un test, et le temps de montée en charge seul ne vous indique pas combien de temps dure la charge soutenue. Ils répondent à deux questions différentes et doivent être lus ensemble.

Durée vs itérations

La durée est l'une des deux façons de définir combien de temps un test s'exécute ; l'autre est les itérations. Un test basé sur la durée continue de s'exécuter jusqu'à ce que le temps configuré se soit écoulé, quel que soit le nombre de fois où chaque utilisateur virtuel parvient à terminer son script dans cette fenêtre. Un test basé sur les itérations s'exécute au contraire jusqu'à ce que chaque utilisateur virtuel ait terminé un nombre fixe d'itérations, quel que soit le temps que cela prend.

La durée est généralement le bon choix lorsque vous voulez une fenêtre de temps cohérente et comparable entre les exécutions de test, par exemple "exécuter en charge de pointe pendant 10 minutes", puisqu'elle fixe le minutage plutôt que la quantité exacte de travail effectué. Les itérations sont un meilleur choix lorsque vous vous souciez davantage du fait que chaque utilisateur virtuel termine une quantité de travail fixe, comme rejouer une transaction spécifique un nombre de fois défini, et que le temps exact que cela prend vous importe moins.

Choisir une durée

Les durées courtes, moins d'une minute, sont utiles pour un test de fumée rapide de votre configuration de test de charge : elles confirment que les requêtes réussissent et que les codes de réponse semblent corrects avant de vous engager dans une exécution plus longue. Les durées plus longues sont ce qui fait apparaître les problèmes qui n'apparaissent que sous charge soutenue, comme la croissance de la mémoire, l'épuisement du pool de connexions, ou des temps de réponse qui se dégradent après quelques minutes de trafic continu. Si vous cherchez à détecter des problèmes de charge soutenue, choisissez une durée suffisamment longue pour dépasser largement votre temps de montée en charge. Un test qui se termine juste au moment où la montée en charge se termine n'observe jamais réellement le comportement en régime stable.