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
- Branch
- bench_junit
- Lint
Lint Passed - Unit
No Test Coverage - Build Status
Buildable 10346 Build 18513: Default Diff Build & Tests Build 18512: arc lint + arc unit
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. |