feat(benchmark-tests): enhance hydration benchmarks with batch#7861
Merged
feat(benchmark-tests): enhance hydration benchmarks with batch#7861
Conversation
…sing and result tracking - Increased default test timeout from 5000ms to 10000ms for better stability. - Implemented batch processing in hydration tests to improve performance measurement. - Introduced a results map to collect and store hydration durations for each tag. - Updated test configurations to accommodate new batch size and timeout settings. - Refactored result writing logic into a dedicated module for better organization. - Enhanced the test run logic to handle batches of elements and track hydration performance more effectively.
Contributor
|
Netlify Draft Deployment |
Contributor
Hydration Benchmark Report (vs Baseline)✅ Top 5 Improvements (Best Speedups)
🔻 Flop 5 Regressions (Worst Slowdowns)
📋 Show all results
|
Contributor
There was a problem hiding this comment.
Pull Request Overview
This PR enhances the hydration benchmark tests by increasing default timeouts, introducing batch processing, and refactoring result collection and output for more organized and accurate performance measurements.
- Increased test timeouts and updated configurations for both WebdriverIO and Playwright.
- Refactored benchmark test logic to process batches of elements and collect results via maps.
- Adjusted logging levels in several components to change error reporting to warnings.
Reviewed Changes
Copilot reviewed 12 out of 12 changed files in this pull request and generated no comments.
Show a summary per file
| File | Description |
|---|---|
| packages/tools/benchmark-tests/wdio.conf.cjs | Updated timeout configuration for improved stability. |
| packages/tools/benchmark-tests/tests/lib/test.ts | Refactored testRun to implement batch processing and updated result mapping. |
| packages/tools/benchmark-tests/tests/lib/config.ts | Increased iterations, batch size, and timeout values. |
| packages/tools/benchmark-tests/tests/lib/browser.ts | Updated benchmark runner integration with new batch parameters. |
| packages/tools/benchmark-tests/tests/lib/after.ts | Adjusted result file writing logic to work with results maps. |
| packages/tools/benchmark-tests/tests/hydration.webdriver.ts | Modified imports and after hook to accommodate batch results. |
| packages/tools/benchmark-tests/tests/hydration.playwright.ts | Updated Playwright test configuration and hooks for batch processing. |
| packages/tools/benchmark-tests/playwright.config.js | Updated timeout setting for Playwright tests. |
| packages/components/src/utils/unique-nav-labels.ts | Changed logging from error to warning for duplicate nav labels. |
| packages/components/src/schema/props/color.ts | Modified logging level for invalid color values. |
| packages/components/src/components/toaster/toaster.tsx | Adjusted logging level for disposed toaster service warnings. |
Comments suppressed due to low confidence (4)
packages/tools/benchmark-tests/tests/lib/test.ts:5
- [nitpick] The variable name 'testResults' now represents batch-level results instead of individual element measurements. Consider renaming it to 'batchResults' to improve clarity.
const testResults: Map<Set<HTMLElement>, Measure> = new Map();
packages/components/src/utils/unique-nav-labels.ts:12
- Changing the log level from error to warn reduces the visibility of duplicate nav label issues. Please verify this change aligns with the intended error handling strategy.
Log.warn(`There already is a nav element with the label "${ariaLabel}"`);
packages/components/src/schema/props/color.ts:111
- The removal of the 'forceLog' option alters how invalid color values are reported. Confirm that this logging change meets your error reporting requirements.
Log.warn(`_color was empty or invalid (${JSON.stringify(value)})`);
packages/components/src/components/toaster/toaster.tsx:41
- Similar to other logging updates, switching from enforced error logging to a warning might reduce issue visibility. Please ensure this change is consistent with your logging policy for critical state changes.
Log.warn('Toaster service is already disposed.');
laske185
reviewed
Jun 11, 2025
laske185
approved these changes
Jun 11, 2025
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to subscribe to this conversation on GitHub.
Already have an account?
Sign in.
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
The A11y and PO reviews will only take place after all other DoD steps have been completed by the Developer: