[ai] Add integration test runner skill#33654
Merged
Conversation
Contributor
There was a problem hiding this comment.
Pull request overview
This PR introduces a new GitHub Copilot skill for running .NET MAUI integration tests locally. The skill provides an automated PowerShell script and comprehensive documentation to streamline validation of templates, samples, and end-to-end scenarios using local workloads.
Changes:
- Added skill documentation (SKILL.md) describing usage, parameters, test categories, and troubleshooting
- Created PowerShell automation script (Run-IntegrationTests.ps1) that orchestrates build, workload installation, version extraction, and test execution
Reviewed changes
Copilot reviewed 2 out of 2 changed files in this pull request and generated 2 comments.
| File | Description |
|---|---|
| .github/skills/run-integration-tests/SKILL.md | Comprehensive documentation for the integration test skill including available categories, script parameters, and usage examples |
| .github/skills/run-integration-tests/scripts/Run-IntegrationTests.ps1 | PowerShell automation script that builds MAUI, installs workloads, extracts package version, and runs integration tests with configurable filters |
.github/skills/run-integration-tests/scripts/Run-IntegrationTests.ps1
Outdated
Show resolved
Hide resolved
.github/skills/run-integration-tests/scripts/Run-IntegrationTests.ps1
Outdated
Show resolved
Hide resolved
rmarinho
commented
Jan 21, 2026
.github/skills/run-integration-tests/scripts/Run-IntegrationTests.ps1
Outdated
Show resolved
Hide resolved
Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com>
3 tasks
Add -warnAsError false to build.sh/build.cmd invocations to match the behavior of dotnet cake where warningsAsError defaults to false. This prevents GRADLE warnings about obsolete Java source/target version 8 from being promoted to errors and failing the build.
Introduce an -AutoProvision switch to Run-IntegrationTests.ps1 to automatically provision the local .dotnet SDK and MAUI workloads (runs `dotnet tool restore`, `dotnet cake --target=dotnet`, and `dotnet cake --target=dotnet-local-workloads`) when the expected .dotnet folder is missing. Update SKILL.md to document the new -AutoProvision flag, provide explicit first-time provisioning steps and verification commands, note that the old `./build.sh --target=dotnet` syntax is deprecated, add a troubleshooting hint for missing local SDK, and add guidance for running iOS tests individually to avoid simulator state issues. These changes simplify first-time setup and improve reliability and diagnostics for running integration tests locally and in CI.
kubaflo
approved these changes
Jan 29, 2026
kubaflo
added a commit
to kubaflo/maui
that referenced
this pull request
Feb 2, 2026
### Description of Change This pull request introduces a new skill for running integration tests in the .NET MAUI repository, along with major improvements to the documentation and automation for local test execution. The changes ensure that contributors use a standardized, cross-platform workflow for integration tests, reducing manual setup errors and improving reliability. Additionally, test isolation is enhanced by preventing MSBuild from inheriting repo-wide settings in test projects. **Integration Test Skill Addition & Documentation** * Added the `run-integration-tests` skill, with full documentation in `.github/skills/run-integration-tests/SKILL.md`, providing automated build, workload installation, environment variable setup, and test execution for various categories and platforms. * Updated `.github/copilot-instructions.md` to include the new skill, its purpose, trigger phrases, and categories, instructing users to always use the skill for integration tests. * Overhauled `.github/instructions/integration-tests.instructions.md` to emphasize using the skill, provide example commands, and clarify manual fallback steps and prerequisites. **Automation & Reliability Improvements** * Added the PowerShell script `.github/skills/run-integration-tests/scripts/Run-IntegrationTests.ps1` that automates the full workflow: building, packing, installing workloads, setting environment variables, and running tests with results output in TRX format. Includes platform checks and error handling. **Test Isolation Enhancement** * Updated `BaseBuildTest.cs` to create `Directory.Build.props` and `Directory.Build.targets` in the test directory root, preventing MSBuild from inheriting repo-wide Arcade SDK settings and ensuring test projects use local obj/bin folders for improved isolation. --------- Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com> Co-authored-by: Shane Neuville <shneuvil@microsoft.com> Co-authored-by: Jakub Florkowski <kubaflo123@gmail.com>
This was referenced Feb 12, 2026
Merged
Closed
Merged
This was referenced Feb 17, 2026
Merged
Closed
Closed
Open
Closed
Closed
Open
This was referenced Feb 25, 2026
Open
This was referenced Mar 6, 2026
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 of Change
This pull request introduces a new skill for running integration tests in the .NET MAUI repository, along with major improvements to the documentation and automation for local test execution. The changes ensure that contributors use a standardized, cross-platform workflow for integration tests, reducing manual setup errors and improving reliability. Additionally, test isolation is enhanced by preventing MSBuild from inheriting repo-wide settings in test projects.
Integration Test Skill Addition & Documentation
run-integration-testsskill, with full documentation in.github/skills/run-integration-tests/SKILL.md, providing automated build, workload installation, environment variable setup, and test execution for various categories and platforms..github/copilot-instructions.mdto include the new skill, its purpose, trigger phrases, and categories, instructing users to always use the skill for integration tests..github/instructions/integration-tests.instructions.mdto emphasize using the skill, provide example commands, and clarify manual fallback steps and prerequisites.Automation & Reliability Improvements
.github/skills/run-integration-tests/scripts/Run-IntegrationTests.ps1that automates the full workflow: building, packing, installing workloads, setting environment variables, and running tests with results output in TRX format. Includes platform checks and error handling.Test Isolation Enhancement
BaseBuildTest.csto createDirectory.Build.propsandDirectory.Build.targetsin the test directory root, preventing MSBuild from inheriting repo-wide Arcade SDK settings and ensuring test projects use local obj/bin folders for improved isolation.