run-helix-tests
Submit and monitor .NET MAUI unit tests on Helix infrastructure. Supports running XAML, Resizetizer, Core, Essentials, and other unit test projects on distributed Helix queues.
Install
mkdir -p .claude/skills/run-helix-tests && curl -L -o skill.zip "https://mcp.directory/api/skills/download/7229" && unzip -o skill.zip -d .claude/skills/run-helix-tests && rm skill.zipInstalls to .claude/skills/run-helix-tests
About this skill
Run Helix Tests Skill
Submit and monitor .NET MAUI unit tests on Helix infrastructure from your local machine.
Tools Required
This skill uses pwsh (PowerShell 7+) to run the scripts. The scripts call the local .dotnet/dotnet SDK.
When to Use
- User asks to "run tests on Helix"
- User wants to validate test changes on Helix infrastructure
- User asks to "test on multiple platforms" (Windows + macOS)
- User wants to debug Helix-specific test failures locally
- User asks about "Helix unit tests" (not device tests - those use
helix_xharness.proj)
Prerequisites
Before running Helix tests, ensure:
-
Local SDK provisioned: The
.dotnet/folder must exist with the SDK# If missing, run: dotnet cake --target=dotnet -
Build tasks compiled (for first run):
# Windows .\build.cmd -restore -build -configuration Release -projects .\Microsoft.Maui.BuildTasks.slnf # macOS/Linux ./build.sh -restore -build -configuration Release -projects ./Microsoft.Maui.BuildTasks.slnf
Scripts
All scripts are in .github/skills/run-helix-tests/scripts/
1. Submit Unit Tests to Helix
# Submit all unit tests (XAML, Core, Essentials, Resizetizer, etc.)
pwsh .github/skills/run-helix-tests/scripts/Submit-HelixTests.ps1
# Submit with specific configuration
pwsh .github/skills/run-helix-tests/scripts/Submit-HelixTests.ps1 -Configuration Debug
# Submit to specific queue only
pwsh .github/skills/run-helix-tests/scripts/Submit-HelixTests.ps1 -Queue "Windows.10.Amd64.Open"
2. Monitor Helix Job Status
# Monitor a submitted job (use job ID from submission output)
pwsh .github/skills/run-helix-tests/scripts/Get-HelixJobStatus.ps1 -JobId <JOB_ID>
# Wait for completion with polling
pwsh .github/skills/run-helix-tests/scripts/Get-HelixJobStatus.ps1 -JobId <JOB_ID> -Wait
3. Get Helix Work Item Console Logs
# Get console output for a specific work item
pwsh .github/skills/run-helix-tests/scripts/Get-HelixWorkItemLog.ps1 -JobId <JOB_ID> -WorkItem <WORK_ITEM_NAME>
# Get failed work items only
pwsh .github/skills/run-helix-tests/scripts/Get-HelixWorkItemLog.ps1 -JobId <JOB_ID> -FailedOnly
Quick Start (Manual)
If you prefer to run directly without scripts:
# Windows
.\helix.cmd
# macOS/Linux
./helix.sh
These wrapper scripts set the required environment variables and submit to Helix.
Test Projects Submitted
The following test projects are submitted to Helix (defined in eng/helix.proj):
| Project | Description |
|---|---|
Controls.Xaml.UnitTests | XAML parsing and compilation tests |
Controls.Core.UnitTests | Core controls unit tests |
Controls.BindingSourceGen.UnitTests | Binding source generator tests |
SourceGen.UnitTests | General source generator tests |
Core.UnitTests | Core framework tests |
Essentials.UnitTests | Essentials APIs tests |
Resizetizer.UnitTests | Image resizing tests |
Helix Queues
Tests run on multiple queues in parallel:
| Queue | Platform |
|---|---|
Windows.10.Amd64.Open | Windows 10 x64 |
osx.15.arm64.maui.open | macOS 15 ARM64 |
Workflow
Submit and Monitor Tests
-
Submit tests:
$result = pwsh .github/skills/run-helix-tests/scripts/Submit-HelixTests.ps1 # Note the job IDs from output -
Monitor progress:
pwsh .github/skills/run-helix-tests/scripts/Get-HelixJobStatus.ps1 -JobId $jobId -Wait -
Check failures (if any):
pwsh .github/skills/run-helix-tests/scripts/Get-HelixWorkItemLog.ps1 -JobId $jobId -FailedOnly
Debug a Specific Test Failure
- Get the job ID from the Helix submission output
- Find the failed work item name
- Get the console log:
pwsh .github/skills/run-helix-tests/scripts/Get-HelixWorkItemLog.ps1 -JobId <JOB_ID> -WorkItem "Microsoft.Maui.Controls.Xaml.UnitTests.dll"
Understanding Results
Helix test results are reported to the console and can be viewed at:
- Helix Portal: https://helix.dot.net/api/2019-06-17/jobs/{jobId}
- Work Item Console: https://helix.dot.net/api/2019-06-17/jobs/{jobId}/workitems/{workItemName}/console
Common Issues
| Issue | Solution |
|---|---|
| "dotnet not found" | Run dotnet cake --target=dotnet to provision SDK |
| "Build failed" | Run build.cmd/build.sh first to build required projects |
| "Queue not available" | Check https://helix.dot.net for queue status |
| "Test timeout" | Some tests have long execution times; this is normal |
Difference from Device Tests
This skill runs unit tests on Helix (eng/helix.proj).
For device tests (iOS, Android, MacCatalyst emulators/simulators), use:
# Device tests use helix_xharness.proj instead
./eng/common/msbuild.sh ./eng/helix_xharness.proj /t:Test /p:TargetOS=ios
See .github/instructions/helix-device-tests.instructions.md for device test guidance.
More by dotnet
View all skills by dotnet →You might also like
flutter-development
aj-geddes
Build beautiful cross-platform mobile apps with Flutter and Dart. Covers widgets, state management with Provider/BLoC, navigation, API integration, and material design.
drawio-diagrams-enhanced
jgtolentino
Create professional draw.io (diagrams.net) diagrams in XML format (.drawio files) with integrated PMP/PMBOK methodologies, extensive visual asset libraries, and industry-standard professional templates. Use this skill when users ask to create flowcharts, swimlane diagrams, cross-functional flowcharts, org charts, network diagrams, UML diagrams, BPMN, project management diagrams (WBS, Gantt, PERT, RACI), risk matrices, stakeholder maps, or any other visual diagram in draw.io format. This skill includes access to custom shape libraries for icons, clipart, and professional symbols.
ui-ux-pro-max
nextlevelbuilder
"UI/UX design intelligence. 50 styles, 21 palettes, 50 font pairings, 20 charts, 8 stacks (React, Next.js, Vue, Svelte, SwiftUI, React Native, Flutter, Tailwind). Actions: plan, build, create, design, implement, review, fix, improve, optimize, enhance, refactor, check UI/UX code. Projects: website, landing page, dashboard, admin panel, e-commerce, SaaS, portfolio, blog, mobile app, .html, .tsx, .vue, .svelte. Elements: button, modal, navbar, sidebar, card, table, form, chart. Styles: glassmorphism, claymorphism, minimalism, brutalism, neumorphism, bento grid, dark mode, responsive, skeuomorphism, flat design. Topics: color palette, accessibility, animation, layout, typography, font pairing, spacing, hover, shadow, gradient."
godot
bfollington
This skill should be used when working on Godot Engine projects. It provides specialized knowledge of Godot's file formats (.gd, .tscn, .tres), architecture patterns (component-based, signal-driven, resource-based), common pitfalls, validation tools, code templates, and CLI workflows. The `godot` command is available for running the game, validating scripts, importing resources, and exporting builds. Use this skill for tasks involving Godot game development, debugging scene/resource files, implementing game systems, or creating new Godot components.
nano-banana-pro
garg-aayush
Generate and edit images using Google's Nano Banana Pro (Gemini 3 Pro Image) API. Use when the user asks to generate, create, edit, modify, change, alter, or update images. Also use when user references an existing image file and asks to modify it in any way (e.g., "modify this image", "change the background", "replace X with Y"). Supports both text-to-image generation and image-to-image editing with configurable resolution (1K default, 2K, or 4K for high resolution). DO NOT read the image file first - use this skill directly with the --input-image parameter.
fastapi-templates
wshobson
Create production-ready FastAPI projects with async patterns, dependency injection, and comprehensive error handling. Use when building new FastAPI applications or setting up backend API projects.
Related MCP Servers
Browse all serversIntegrate with EspoCRM for full CRUD operations, advanced search, filtering, pagination, and health monitoring of your c
Manage browser tests and suites with BugBug's software automation tester, headless browsers, and real-time error reporti
AI-driven control of live Chrome via Chrome DevTools: browser automation, debugging, performance analysis and network mo
Create modern React UI components instantly with Magic AI Agent. Integrates with top IDEs for fast, stunning design and
Effortlessly create 25+ chart types with MCP Server Chart. Visualize complex datasets using TypeScript and AntV for powe
Cloudflare Observability offers advanced network monitoring software, delivering insights and trends for smarter network
Stay ahead of the MCP ecosystem
Get weekly updates on new skills and servers.