Fix UI tests: update Cypress config and test assertions#2612
Merged
imatiach-msft merged 1 commit intomicrosoft:mainfrom Feb 5, 2026
Merged
Fix UI tests: update Cypress config and test assertions#2612imatiach-msft merged 1 commit intomicrosoft:mainfrom
imatiach-msft merged 1 commit intomicrosoft:mainfrom
Conversation
There was a problem hiding this comment.
Pull request overview
This pull request updates Node.js compatibility from version 16.x to 20.x across CI/CD workflows, implements workarounds for Node.js 17+ OpenSSL compatibility issues in webpack, improves E2E test reliability through better element waiting strategies, and updates test dataset configurations to reflect actual data counts.
Changes:
- Node.js version updated to 20.x in CD workflow, and CI now tests against both 16.x and 20.x
- Added OpenSSL hash algorithm workaround in webpack config for Node.js 17+ compatibility
- Enhanced Cypress E2E configuration with CSS loader handling and improved test assertions for scatter charts
- Incremented datapoint counts in test datasets (Boston, Breast Cancer, EBM, IBM, Iris) to match actual data
Reviewed changes
Copilot reviewed 9 out of 10 changed files in this pull request and generated 14 comments.
Show a summary per file
| File | Description |
|---|---|
| .github/workflows/CD.yml | Updates Node.js version from 16.x to 20.x for deployment workflow |
| .github/workflows/CI-typescript.yml | Adds Node.js 20.x to test matrix alongside 16.x for compatibility testing |
| webpack.config.js | Adds OpenSSL compatibility workaround for Node.js 17+ by replacing md4 hash with sha256 |
| package.json | Adds null-loader dependency for Cypress E2E CSS handling |
| apps/dashboard-e2e/src/plugins/index.js | Configures custom webpack to ignore CSS imports and disable caching for Node 20 |
| apps/dashboard-e2e/src/describer/interpret/individualFeatureImportance/describeDataPointChart.ts | Improves test reliability by explicitly waiting for chart elements with timeout |
| apps/dashboard-e2e/src/describer/interpret/interpretDatasets/bostonData.ts | Updates datapoint counts from 102 to 103 for Boston dataset configurations |
| apps/dashboard-e2e/src/describer/interpret/interpretDatasets/interpretDatasets.ts | Updates datapoint counts for Breast Cancer (114→115), EBM (2→3), and IBM (20→21) datasets |
| apps/dashboard-e2e/src/describer/interpret/interpretDatasets/irisData.ts | Updates datapoint counts from 30 to 31 for Iris dataset configurations |
| yarn.lock | Updates various Babel, Turf, FluentUI, and other dependencies to latest compatible versions |
💡 Add Copilot custom instructions for smarter, more guided reviews. Learn how to get started.
apps/dashboard-e2e/src/describer/interpret/interpretDatasets/interpretDatasets.ts
Show resolved
Hide resolved
apps/dashboard-e2e/src/describer/interpret/interpretDatasets/bostonData.ts
Show resolved
Hide resolved
apps/dashboard-e2e/src/describer/interpret/interpretDatasets/bostonData.ts
Show resolved
Hide resolved
apps/dashboard-e2e/src/describer/interpret/interpretDatasets/irisData.ts
Show resolved
Hide resolved
.../dashboard-e2e/src/describer/interpret/individualFeatureImportance/describeDataPointChart.ts
Show resolved
Hide resolved
apps/dashboard-e2e/src/describer/interpret/interpretDatasets/bostonData.ts
Show resolved
Hide resolved
apps/dashboard-e2e/src/describer/interpret/interpretDatasets/irisData.ts
Show resolved
Hide resolved
apps/dashboard-e2e/src/describer/interpret/interpretDatasets/irisData.ts
Show resolved
Hide resolved
apps/dashboard-e2e/src/describer/interpret/interpretDatasets/interpretDatasets.ts
Show resolved
Hide resolved
fc7a234 to
a451af3
Compare
a451af3 to
76a6774
Compare
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 join this conversation on GitHub.
Already have an account?
Sign in to comment
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.
Description
This pull request updates Node.js compatibility across the project, improves E2E test reliability, and updates test dataset configurations to match new data. The most significant changes are grouped below.
Node.js version and compatibility updates:
.github/workflows/CD.yml) is updated from 16.x to 20.x..github/workflows/CI-typescript.yml) is updated to test against both Node.js 16.x and 20.x, ensuring compatibility with both versions.webpack.config.jsto address OpenSSL hash algorithm compatibility issues with Node.js 17+ and webpack 4, avoiding the need for the--openssl-legacy-providerflag.E2E test reliability and compatibility improvements:
apps/dashboard-e2e/src/plugins/index.js, a custom webpack configuration is introduced to ignore CSS imports (usingnull-loader) and disable caching for Node 20 compatibility. Thenull-loaderdependency is added topackage.json. [1] [2]Test dataset updates:
datapointvalues in several test datasets (Boston, Breast Cancer, EBM, IBM, and Iris) is incremented by one to reflect updated data, ensuring tests match the actual dataset sizes. [1] [2] [3] [4] [5] [6] [7] [8] [9] [10] [11] [12]Checklist