Démarrage rapide


Qu’est-ce que Bencher ?

Bencher est une suite d’outils de benchmarking continu. Avez-vous déjà eu une régression de performance qui a impacté vos utilisateurs ? Bencher aurait pu empêcher cela de se produire. Bencher vous permet de détecter et de prévenir les régressions de performance avant qu’elles n’arrivent en production.

  • Exécuter: Exécutez vos benchmarks localement ou en CI en utilisant vos outils de benchmarking préférés. La CLI bencher enveloppe simplement votre harnais de benchmarking existant et stocke ses résultats.
  • Suivre: Suivez les résultats de vos benchmarks au fil du temps. Surveillez, interrogez et graphiquez les résultats à l’aide de la console web Bencher en fonction de la branche source, du banc d’essai et de la mesure.
  • Détecter: Détectez les régressions de performances en CI. Bencher utilise des analyses de pointe et personnalisables pour détecter les régressions de performances avant qu’elles n’arrivent en production.

Pour les mêmes raisons que les tests unitaires sont exécutés en CI pour prévenir les régressions de fonctionnalités, les benchmarks devraient être exécutés en CI avec Bencher pour prévenir les régressions de performance. Les bugs de performance sont des bugs !


Installer le CLI bencher

Sélectionnez votre système d’exploitation et exécutez la commande fournie pour installer le CLI bencher. Pour plus de détails, consultez la documentation sur l’installation du CLI bencher.

Terminal window

Maintenant, vérifions que vous avez le CLI bencher installé. Exécutez :

Terminal window
bencher --version

Vous devriez voir :

bencher 0.5.0

Sélectionnez votre boîte à outils de benchmark

Si vous avez déjà des benchmarks écrits, sélectionnez votre langage de programmation et votre boîte à outils de benchmark dans la liste ci-dessous. Sinon, passez simplement cette étape. Pour plus de détails, consultez les adaptateurs de boîte à outils de benchmark documentation.

C#
C++
Go
Java
JavaScript
Python
Ruby
Rust
Shell
JSON

Suivez vos Benchmarks

Vous êtes maintenant prêt à suivre vos résultats de benchmarks ! Pour ce faire, vous utiliserez la sous-commande CLI bencher run pour exécuter vos benchmarks et collecter les résultats. Exécutez :

Terminal window

Vous devrez peut-être modifier la commande de benchmark pour correspondre à votre configuration. Si vous n’avez pas encore de benchmarks, vous pouvez simplement utiliser la sous-commande bencher mock comme votre commande de benchmark pour générer des données fictives. Si tout fonctionne comme prévu, la fin de la sortie devrait ressembler à quelque chose comme ceci :

View results:
- bencher::mock_0 (Latency): https://bencher.dev/perf/project-abc4567-wxyz123456789?branches=88d5192d-5cd1-47c6-a817-056e5968737c&heads=657a8ee9-1f30-49d4-bd9b-ceed02576d7e&testbeds=f3a5db46-a57e-4caf-b96e-f0c1111eaa67&benchmarks=f7022024-ae16-4782-8f0d-869d65a82930&measures=775999d3-d705-482f-acd8-41947f8e0fbc&start_time=1741390156000&end_time=1743982156000&report=709d3476-51a4-4939-9584-75d9a2c04c54
- bencher::mock_1 (Latency): https://bencher.dev/perf/project-abc4567-wxyz123456789?branches=88d5192d-5cd1-47c6-a817-056e5968737c&heads=657a8ee9-1f30-49d4-bd9b-ceed02576d7e&testbeds=f3a5db46-a57e-4caf-b96e-f0c1111eaa67&benchmarks=7a823440-216f-482d-a05f-8bf75e865bba&measures=775999d3-d705-482f-acd8-41947f8e0fbc&start_time=1741390156000&end_time=1743982156000&report=709d3476-51a4-4939-9584-75d9a2c04c54
- bencher::mock_2 (Latency): https://bencher.dev/perf/project-abc4567-wxyz123456789?branches=88d5192d-5cd1-47c6-a817-056e5968737c&heads=657a8ee9-1f30-49d4-bd9b-ceed02576d7e&testbeds=f3a5db46-a57e-4caf-b96e-f0c1111eaa67&benchmarks=8d9695ff-f352-4781-9561-3c69012fd9fe&measures=775999d3-d705-482f-acd8-41947f8e0fbc&start_time=1741390156000&end_time=1743982156000&report=709d3476-51a4-4939-9584-75d9a2c04c54
- bencher::mock_3 (Latency): https://bencher.dev/perf/project-abc4567-wxyz123456789?branches=88d5192d-5cd1-47c6-a817-056e5968737c&heads=657a8ee9-1f30-49d4-bd9b-ceed02576d7e&testbeds=f3a5db46-a57e-4caf-b96e-f0c1111eaa67&benchmarks=8ef6e256-8084-4afe-a7cf-eaa46384c19d&measures=775999d3-d705-482f-acd8-41947f8e0fbc&start_time=1741390156000&end_time=1743982156000&report=709d3476-51a4-4939-9584-75d9a2c04c54
- bencher::mock_4 (Latency): https://bencher.dev/perf/project-abc4567-wxyz123456789?branches=88d5192d-5cd1-47c6-a817-056e5968737c&heads=657a8ee9-1f30-49d4-bd9b-ceed02576d7e&testbeds=f3a5db46-a57e-4caf-b96e-f0c1111eaa67&benchmarks=1205e35a-c73b-4ff9-916c-40838a62ae0b&measures=775999d3-d705-482f-acd8-41947f8e0fbc&start_time=1741390156000&end_time=1743982156000&report=709d3476-51a4-4939-9584-75d9a2c04c54
Claim this project: https://bencher.dev/auth/signup?claim=d4b0cd5a-8422-40af-9872-8e18d5d062c4

Vous pouvez maintenant visualiser les résultats de chacun de vos benchmarks dans le navigateur. Cliquez ou copiez et collez les liens depuis View results. Pour revendiquer le projet, cliquez ou copiez et collez le lien Claim this project dans votre navigateur.



🐰 Félicitations ! Vous avez suivi vos premiers résultats de benchmark ! 🎉


Continuez : Comment revendiquer un projet ➡

🤖 Ce document a été automatiquement généré par OpenAI GPT-4. Il peut ne pas être précis et peut contenir des erreurs. Si vous trouvez des erreurs, veuillez ouvrir une issue sur GitHub.


Published: Sat, August 12, 2023 at 9:07:00 PM UTC | Last Updated: Sun, April 6, 2025 at 6:25:00 PM UTC