-
Notifications
You must be signed in to change notification settings - Fork 2k
[ui, ci] retain artifacts from test runs including test timing #24555
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Conversation
73d86fa
to
acdd210
Compare
@@ -24,6 +24,7 @@ | |||
{{content-for "body"}} | |||
|
|||
<script src="{{rootURL}}assets/vendor.js"></script> | |||
|
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
no-op to trigger the
pull_request:
paths:
- "ui/**"
part of the action.
Ember Test Audit comparison
|
52e500b
to
71b073d
Compare
0729338
to
3391750
Compare
3391750
to
fef9738
Compare
fef9738
to
73f3a32
Compare
73f3a32
to
8f358e6
Compare
8f358e6
to
699ed1d
Compare
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
LGTM
c4dc4c8
to
8f81bf8
Compare
8f81bf8
to
0603cab
Compare
0603cab
to
040060f
Compare
040060f
to
e9bf68a
Compare
e9bf68a
to
ebfcad6
Compare
ebfcad6
to
2adc472
Compare
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
LGTM!
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Super cool to see this work get picked up again 🤩
for (let i = 1; i <= NUM_PARTITIONS; i++) { | ||
try { | ||
const data = JSON.parse( | ||
fs.readFileSync(`../test-results/test-results-${i}/test-results.json`).toString() | ||
); |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Will there be anything else in the test-results directory other than subdirectories for each partition?
I wonder if you can walk the dir tree instead of relying on synchronizing NUM_PARTITIONS
and the GHA matrix config.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Yeah, I left a pretty verbose dir trail here with the hope that I'd populate this with further artifacts / test-run metadata. No explicit plans yet, though!
tests: results | ||
}; | ||
|
||
fs.writeFileSync('../ui/combined-test-results.json', JSON.stringify(output, null, 2)); |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Doing a combine step that takes json and emits json is really nice. Should prove to be more flexible than trying to do all the collating, aggregating, and analysis in one script.
* retain artifacts from test runs including test timing * Pinning commit hashes for action helpers * trigger for ui-test run * Trying to isolate down to a simple upload * Once more with mkdir * What if we just wrote our own test reporter tho * Let the partitioned runs handle placement * Filter out common token logs, add a summary at the end, and note failures in logtime * Custom reporter cannot also have an output file, he finds out two days late * Aggregate summary, duration, and removing failure case * Conditional test report generation * Timeouts are errors * Trying with un-partitioned input json file * Remove the commented-out lines for main-only runs * combine-ui-test-results as its own script
…release/1.9.x (#25177) * no-op commit due to failed cherry-picking * [ui, ci] retain artifacts from test runs including test timing (#24555) * retain artifacts from test runs including test timing * Pinning commit hashes for action helpers * trigger for ui-test run * Trying to isolate down to a simple upload * Once more with mkdir * What if we just wrote our own test reporter tho * Let the partitioned runs handle placement * Filter out common token logs, add a summary at the end, and note failures in logtime * Custom reporter cannot also have an output file, he finds out two days late * Aggregate summary, duration, and removing failure case * Conditional test report generation * Timeouts are errors * Trying with un-partitioned input json file * Remove the commented-out lines for main-only runs * combine-ui-test-results as its own script * Remove the Ember Test Audit workflow (#24637) * [ui, tests] Various acceptance test fixups (v main) (#25031) * Add factory hooks for jobs to have previously stable versions and stopped status * Since #24973 node-read isn't presupposed and so should regex match only on the common url parts * Job detail tests for title buttons are now bimodal and default to having previously-stable version in history * prettier plz * Breaking a thing on purpose to see if my other broken thing is broken * continue-on-error set to false to get things red when appropriate * OK what if continue-on-error=true but we do a separate failure reporting after the fact * fail-fast are you the magic incantation that I need? * Re-fix my test now that fast-fail is off * Fix to server-leader by adding a region first, and always()-append to uploading partition results * Express failure step lists failing tests so you don't have to click back into ember-exam step * temporary snapshot and logging for flakey test in service job detail * Bunch of region and tasklogs test fixups * using allocStatusDistribution to ensure service job always has a non-queued alloc * Manually remove ember test audit (re-do #24637) --------- Co-authored-by: temp <[email protected]> Co-authored-by: Phil Renaud <[email protected]> Co-authored-by: Phil Renaud <[email protected]>
I'm going to lock this pull request because it has been closed for 120 days ⏳. This helps our maintainers find and focus on the active contributions. |
Description
Our
ember-test-audit
action is currently failing, and I'm using that as an excuse to improve our front-end testing story generally.This will be a two-step approach, and this PR is the first step:
test-ui
test results on merge tomain
This PR adds artifact uploads on the back of
test-ui
. Because those are partitioned/run concurrently 4x, part of this is combining those.The artifact generated looks like this:
In phase 2 of this, we'll be able to do test-by-test duration averages and comparisons, and tease out those tests with the greatest deltas, find flakes, etc.