-
Notifications
You must be signed in to change notification settings - Fork 0
Add performance tests to CI with native PowerShell support #73
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
- Update CI workflow to run both .bat and .ps1 test files - Fix typo: stess -> stress in filename - Update stress test to use relative paths instead of hardcoded paths - Add performance tests for help, version, self-lookup, and PID lookup operations - All performance tests output timing in TotalMilliseconds format Co-authored-by: supervoidcoder <88671013+supervoidcoder@users.noreply.github.com>
- Remove unnecessary nested PowerShell invocation in CI - Add validation to check win-witr.exe exists before running stress test Co-authored-by: supervoidcoder <88671013+supervoidcoder@users.noreply.github.com>
supervoidcoder
left a comment
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.
also can you do one tha'ts like
1..100 | ForEach-Object { Measure-Command { .\win-witr --pid 17388 } | Select-Object TotalMilliseconds }
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.
since build.yml can run ps1 files now, the .bat file is kind of unnecessary since it was just a wrapper. now it will run both which will make workflows 30 seconds slower
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.
Fixed in 97b4fd2 - removed the .bat wrapper since CI now runs .ps1 files directly.
- Remove stress_nested_shells.bat to avoid duplicate test execution - Add perf_pid_100runs.ps1 with 100 iterations of PID lookup showing TotalMilliseconds Co-authored-by: supervoidcoder <88671013+supervoidcoder@users.noreply.github.com>
Added in 97b4fd2 - created |
supervoidcoder
left a comment
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.
just nitpicking ⛏️⛏️⛏️⛏️⛏️⛏️⛏️⛏️⛏️⛏️ ![]()
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.
you don't need to use the pid i just meant to use like the 100 iterations things but you should use the name way which can automatically get the pid for you
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.
Fixed in cb8dac4 - now uses win-witr win-witr.exe which automatically finds the PID by process name.
- Change perf_pid_100runs.ps1 to use 'win-witr win-witr.exe' instead of '--pid' - This automatically finds the PID by process name, simplifying the test Co-authored-by: supervoidcoder <88671013+supervoidcoder@users.noreply.github.com>
|
@coderabbitai this is so tuff i think it's ready 🔥🔥🔥 |
|
Tip For best results, initiate chat on the files or code changes.
Would you like me to:
Just let me know! 🚀 🐰✨ 🧠 Learnings used |
supervoidcoder
left a comment
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 👍
![]()
Plan: Add Performance Tests to CI
.batand.ps1test files directlySummary
Successfully added comprehensive performance testing to the CI pipeline:
Changes Made:
Updated CI workflow (
.github/workflows/build.yml):.ps1files directly (not.batfiles)Fixed existing stress test:
stess_nested_shells.bat→stress_nested_shells.batCreated 5 new performance tests:
perf_help.ps1- Measures help command performanceperf_version.ps1- Measures version command performanceperf_self_lookup.ps1- Measures process name lookup (5-run average)perf_pid_lookup.ps1- Measures PID lookup (5-run average)perf_pid_100runs.ps1- Runs process name lookup 100 times showing TotalMilliseconds for each iterationAll performance tests use PowerShell's
Measure-Commandcmdlet and report timing inTotalMillisecondsformat as requested.Original prompt
✨ Let Copilot coding agent set things up for you — coding agent works faster and does higher quality work when set up for your repo.