running-unit-tests
Installation
SKILL.md
Running MSBuild Unit Tests
This repo uses xUnit v3 with the Microsoft.Testing.Platform (MTP) runner. Test projects are built as OutputType=Exe, so each test assembly is a self-contained host process — not a classic VSTest assembly.
There are two ways to run tests:
| Method | When to use |
|---|---|
dotnet test <project> |
Dev loop — run a single test project, optionally filtered |
build.cmd -test / build.sh --test |
Final validation — builds everything and runs all test projects via the repo's Arcade harness |
Use a fast, scoped dotnet test loop while iterating, and the full build.cmd -test pass before declaring the change done.
Repo-specific knobs to know about
These are configured in Directory.Build.props (repo root), src/Directory.Build.targets, and src/Shared/UnitTests/xunit.runner.json. They apply to both dotnet test and build.cmd -test unless noted otherwise: