Skip to content

[ai] Add integration test runner skill#33654

Merged
rmarinho merged 9 commits intomainfrom
add-integration-tests-skills
Jan 30, 2026
Merged

[ai] Add integration test runner skill#33654
rmarinho merged 9 commits intomainfrom
add-integration-tests-skills

Conversation

@rmarinho
Copy link
Member

@rmarinho rmarinho commented Jan 21, 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.

Copilot AI review requested due to automatic review settings January 21, 2026 19:45
Copy link
Contributor

Copilot AI left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

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

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.
@kubaflo kubaflo added the area-ai-agents Copilot CLI agents, agent skills, AI-assisted development label Jan 28, 2026
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.
@rmarinho rmarinho merged commit c11d214 into main Jan 30, 2026
18 of 28 checks passed
@rmarinho rmarinho deleted the add-integration-tests-skills branch January 30, 2026 14:58
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 <[email protected]>
Co-authored-by: Shane Neuville <[email protected]>
Co-authored-by: Jakub Florkowski <[email protected]>
@kubaflo kubaflo added the copilot label Feb 6, 2026
This was referenced Feb 17, 2026
@github-actions github-actions bot locked and limited conversation to collaborators Mar 9, 2026
Sign up for free to subscribe to this conversation on GitHub. Already have an account? Sign in.

Labels

area-ai-agents Copilot CLI agents, agent skills, AI-assisted development copilot

Projects

None yet

Development

Successfully merging this pull request may close these issues.

4 participants