Skip to content

refactor(UITests): Enable parallel execution for non-interactive tests - #4103

Merged
Keboo merged 10 commits into
masterfrom
attemptUitestSpeedup
Oct 21, 2026
Merged

Keboo merged 10 commits into
masterfrom
attemptUitestSpeedup

Conversation

@Keboo

@Keboo Keboo commented Oct 2, 2026

Copy link
Copy Markdown
Member

Introduces a DoesNotRequireInteraction attribute to mark UI tests that do not require sequential execution, allowing them to run in parallel. This leverages TUnit's parallelization capabilities to significantly reduce overall test suite execution time.

Updates several package versions, including TUnit, to support these changes and improve overall stability.

Keboo and others added 9 commits October 19, 2026 21:26
Introduces a `DoesNotRequireInteraction` attribute to mark UI tests that do not require sequential execution, allowing them to run in parallel. This leverages TUnit's parallelization capabilities to significantly reduce overall test suite execution time.

Updates several package versions, including TUnit, to support these changes and improve overall stability.
Configures the TUnit test runner to execute a maximum of 10 UI tests in parallel. This helps manage resource consumption and improve test stability during concurrent execution.
… skipped test

Removes the 'DoesNotRequireInteraction' attribute from several UI tests, aligning with updated parallel execution handling and simplifying test configuration.
Also enables a previously skipped NumericUpDown test, as its dependencies are now met.
Adjusts the CI workflow to correctly locate UI test screenshots, reflecting the project's target framework upgrade to .NET 10.
…tles

Introduces the C# 'extension' syntax to group UI test extension methods, improving code organization.

Sets the window title for UI tests to the current test's display name. This enhances clarity and aids in debugging and identifying individual test windows, particularly when tests are executed in parallel.
…test

Removes `WindowStartupLocation="CenterScreen"` from UI test windows to streamline creation and reduce potential overhead.

Temporarily skips a `NumericUpDown` test that requires a future update to the `XAMLTest` library to pass reliably.
Dynamically adjusts the parallel test limit based on processor count, improving execution speed.

Prevents minimizing other windows for non-interactive tests, which is essential for stable parallel execution.

Introduces a wait mechanism when locating the `DefaultErrorViewer` to resolve potential timing-related flakiness in validation tests.

Escapes test display names used as window titles to prevent XAML parsing errors, improving test robustness.
Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
Consume parallel shutdown fixes. Validate the 46 affected regression cases across three consecutive runs with the parallel limit unchanged at ten.

Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
@Keboo
Keboo force-pushed the attemptUitestSpeedup branch from 8d2855c to 5f06e37 Compare October 20, 2026 04:26
Keep bottom-aligned controls on screen on smaller CI desktops. The generic helper lost the startup location used by the other window helpers.

Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
@Keboo
Keboo merged commit 0877280 into master Oct 21, 2026
2 checks passed
@Keboo
Keboo deleted the attemptUitestSpeedup branch October 21, 2026 18:57
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant