migrate-mstest-v1v2-to-v3

Migrate MSTest v1/v2 projects to v3 with package and configuration updates.

1|Updated May 21, 2026
One-click install
npx skills add https://github.com/1k-off/umbraco-observability-playground --skill migrate-mstest-v1v2-to-v3-1k-off
Or copy as Structured Prompt for Agent
Please help me install this Agent Skill.
Skill: migrate-mstest-v1v2-to-v3
Source: https://github.com/1k-off/umbraco-observability-playground/tree/main/.agents/skills/migrate-mstest-v1v2-to-v3
Command: npx skills add https://github.com/1k-off/umbraco-observability-playground --skill migrate-mstest-v1v2-to-v3-1k-off

SYSTEM DOCUMENTATION & REQUIREMENTS

What problem does it solve?

It fixes build and test failures that happen when upgrading MSTest from v1/v2 to MSTest v3, including removed assertion overloads and unsupported legacy configuration.

Core Features & Use Cases

  • Detect the starting MSTest generation (v1 via assembly references vs v2 via NuGet packages) so you apply the correct migration path.
  • Fix MSTest v3 breaking changes such as assertion overload removals (e.g., Assert.AreEqual object overloads) and stricter DataRow type matching.
  • Migrate legacy settings by replacing .testsettings/<LegacySettings> with a supported .runsettings configuration.

Quick Start

Tell me your .csproj or solution path and the exact build error you’re seeing after updating MSTest packages to v3, and I’ll outline the minimum code and settings changes to get the project compiling and tests running.

Frequently Asked Questions about migrate-mstest-v1v2-to-v3

High-intent search queries and answers about installing and using this skill.

FAQPage Schema
How do I fix MSTest v3 build errors after upgrading NuGet packages?

Fix MSTest v3 build errors by applying package updates, replacing legacy configuration files, and correcting removed assertion overloads. This migration process targets breaking changes to ensure your dotnet build succeeds.

Why does Assert.AreEqual fail to compile after migrating to MSTest v3?

Assert.AreEqual fails to compile after migrating to MSTest v3 because certain object overloads were removed as a breaking change. You must resolve these assertion overload compilation failures by applying targeted fixes to use the correct supported method signatures.

How do I migrate legacy .testsettings files to runsettings for MSTest v3?

Migrate legacy .testsettings files by replacing the unsupported configuration with a supported .runsettings format. This configuration replacement is required because MSTest v3 does not support legacy settings and needs valid runsettings to execute tests properly.

How do I fix DataRow argument type mismatch errors in MSTest v3?

Fix DataRow argument type mismatch errors in MSTest v3 by updating your test data to match the stricter type matching rules introduced in the new framework. The migration applies targeted fixes for these DataRow typing changes to ensure tests run successfully.

What is the correct migration path for upgrading MSTest from v1 to v3?

The correct migration path for upgrading MSTest from v1 to v3 starts by detecting the starting generation, using assembly references for v1 versus NuGet packages for v2. This detection ensures you apply the correct package updates and configuration replacements for v3.

Does MSTest v3 support non-binary compatibility with v1 and v2 projects?

MSTest v3 does not support non-binary compatibility with v1 and v2 projects, requiring a targeted migration. You must apply package updates, fix assertion overloads, and replace legacy settings to ensure dotnet build and dotnet test succeed without breaking changes.