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 <175728472+Copilot@users.noreply.github.com>
Co-authored-by: Shane Neuville <shneuvil@microsoft.com>
Co-authored-by: Jakub Florkowski <kubaflo123@gmail.com>
@kubaflo kubaflo added the copilot label Feb 6, 2026
This was referenced Feb 17, 2026
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

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