{"repo":"knqyf263/cob","free":true,"listed":false,"github":"https://github.com/knqyf263/cob","clone":"git clone https://github.com/knqyf263/cob.git","description":"Continuous Benchmark for Go Project","language":"Go","stars":390,"topics":["golang","go","ci","testing","test","benchmark"],"license":"MIT","category":"dev-tools","readme_excerpt":"Abstract cob compares benchmarks between the latest commit (HEAD) and the previous commit (HEAD{@1}). The program will fail if the change in score is worse than the threshold. This tools is suitable for CI/CD to detect a regression of a performance automatically. cob runs go test -bench before and after commit internally, so it depends on go command. CAUTION: Note that git reset is executed when you run cob . You should commit all changes before running cob . Table of Contents - Abstract - Continuous Integration (CI) - GitHub Actions - Travis CI - CircleCI - Example - Run only those benchmarks matching a regular expression - Show only benchmarks with worse score - Specify a threshold - Specify a base commit compared with HEAD - Compare only memory allocation - Usage - Q&A - A result of benchmarks is unstable Continuous Integration (CI) See cob-example for details. GitHub Actions Travis CI CircleCI Example Override a command to measure benchmarks To measure benchmarks by make bench , you can use -bench-cmd and -bench-args options. Run only those benchmarks matching a regular expression Result Show only benchmarks with worse score Result Specify a threshold The following option means the program fails if a benchmark score gets worse than 50%. Specify a base commit compared with HEAD By default, cob uses HEAD 1 . If you compare benchmarks with different commit, you can use --base option. Compare only memory allocation You can use -compare option. Result Skip running cob If your ","default_branch":null,"files":null,"tree":[],"storefront":"/r/knqyf263","claimed":false,"request_supported":{"post":"https://gitbuyer.com/r/knqyf263/cob/request-supported","requests":0},"note":"indexed from public GitHub; nothing is for sale on this page. Clone it from GitHub. Paid listings live at /search."}