This adds a Junit output option to the benchmark. This is expected to
allow for displaying graphs on CI to track the duration over time, and
eventually trigger an event if a diff makes this duration to incease.
Details
Details
- Reviewers
jasonbcox - Group Reviewers
Restricted Project - Commits
- rSTAGINGcf338d157943: [BENCH] Add an option to output the result as a Junit report
rABCcf338d157943: [BENCH] Add an option to output the result as a Junit report
./src/bench/bitcoin-bench -printer=junit -filter="AES128CBC.*"
Check the output is a valid Junit XML.
Example result: https://build.bitcoinabc.org/viewLog.html?buildId=38288&buildTypeId=BitcoinABC_BitcoinAbcStaging&tab=testsInfo
Diff Detail
Diff Detail
- Repository
- rABC Bitcoin ABC
- Lint
Lint Not Applicable - Unit
Tests Not Applicable
Event Timeline
Comment Actions
Build Bitcoin-ABC / Diffs / Diff Testing (build-bench) failed.
Snippet of first build failure:
Build 'Bitcoin-ABC / Diffs / Diff Testing' #9123, branch 'phabricator/diff/19017' Started 2020-04-22 15:20:38 on 'agentvm211' by 'Fabien (fabien)' Finished 2020-04-22 15:37:53 with status FAILURE 'Failed to parse xml report (new)'
src/bench/bench.cpp | ||
---|---|---|
100 ↗ | (On Diff #19019) | I noticed our other junit results are like this. Seems like it kind of defeats the purpose when some CI systems stream junit results. Is it really necessary to collect the total_duration? I don't know if this really matters one way or the other. |
src/bench/bench.cpp | ||
---|---|---|
100 ↗ | (On Diff #19019) | Maybe not, but teamcity collects on files anyway so it's basically free in our environment and still valid for others. |