Aperçu du Benchmarking
La plupart des résultats de benchmark sont éphémères. Ils disparaissent dès que votre terminal atteint sa limite de défilement. Certains harnais de benchmark vous permettent de mettre en cache les résultats, mais la plupart ne le font que localement. Bencher vous permet de suivre vos benchmarks à la fois localement et depuis les exécutions de CI, et de les comparer avec les résultats historiques.
La façon la plus simple de suivre vos benchmarks est la sous-commande CLI bencher run
.
Elle encapsule la sortie de votre harnais de benchmark existant et génère un Rapport.
Ce Rapport est ensuite envoyé au serveur API de Bencher,
où la sortie du harnais de benchmark est analysée à l’aide d’un adaptateur de harnais de benchmark.
L’adaptateur de harnais de benchmark détecte tous les Benchmarks présents et leurs Metrics correspondants.
Ces Benchmarks et Metrics sont ensuite sauvegardés avec le Rapport.
S’il existe un Seuil défini, alors les nouvelles Metrics sont comparées aux Metrics historiques de chaque Benchmark présent dans le Rapport.
Si une régression est détectée, alors une Alerte sera générée.
À partir de maintenant, nous ferons référence à vos “benchmarks” comme à des “tests de régression de performance” pour éviter toute confusion.
Benchmarks
Un Benchmark est un test de régression de performance nommé. Si le test de régression de performance est nouveau pour Bencher, alors un Benchmark est automatiquement créé. Sinon, le nom du test de régression de la performance est utilisé comme identifiant unique pour le Benchmark.
Faites attention lorsque vous changez le nom de vos tests de régression de performance. Vous devrez renommer manuellement le Benchmark dans Bencher pour correspondre à ce nouveau nom. Sinon, le test de régression de la performance renommé sera considéré comme un nouveau Benchmark. Ce même mot de prudence s’applique également au déplacement de certains tests de régression de performance. Selon le harnais de benchmark, le chemin vers le test de régression de la performance peut faire partie de son nom.
La seule exception à la mise en garde ci-dessus est l’ignorance d’un Benchmark. Voir supprimer les alertes pour une vue d’ensemble complète.
Metrics
Une Metric est un résultat de test de régression de performance unique et ponctuel.
Jusqu’à trois Mesures peuvent être collectées pour une seule Metric : value
, lower_value
, et upper_value
.
La value
est requise pour toutes les Metrics tandis que lower_value
et upper_value
sont indépendamment facultatives.
Les Mesures collectées sont déterminées par l’adaptateur de harnais de benchmark.
Type de Metric
Un Type de Metric est l’unité de mesure d’une Metric.
Par défaut, tous les Projets commencent avec des Types de Metric Latency
et Throughput
avec des unités de nanosecondes (ns)
et opérations / seconde (ops/s)
respectivement.
Le Type de Metric est déterminé par l’adaptateur de harnais de benchmark.
Rapport
Un Rapport est une collection de Benchmarks et de leurs Metrics pour une Branche et une Plateforme de Test spécifiques.
Les Rapports sont le plus souvent générés en utilisant la sous-commande CLI bencher run
.
Voir comment suivre les tests de régression de performance pour un aperçu complet.
Branche
Une Branche est la référence git
utilisée lors de l’exécution d’un Rapport (c’est-à-dire le nom de la branche ou la balise).
Par défaut, tous les Projets commencent avec une Branche main
.
Lors de l’utilisation de la sous-commande CLI bencher run
,
main
est la Branche par défaut si aucune n’est fournie.
Voir sélection de branche pour une vue d’ensemble complète.
Plateforme de Test
Une Plateforme de Test est le nom de l’environnement de test utilisé lors de l’exécution d’un Rapport.
Par défaut, tous les Projets commencent avec une Plateforme de Test localhost
.
Lors de l’utilisation de la sous-commande CLI bencher run
,
localhost
est la Plateforme de Test par défaut si aucune n’est fournie.
🐰 Félicitations ! Vous avez tout appris sur le suivi des
benchmarkstests de régression de performance ! 🎉