migrate-vstest-to-mtp

migrate-vstest-to-mtp is a skill for Claude Code, Codex from managedcode/dotnet-skills. It costs 191 tokens per session (5,578 once invoked), scanned A, a copy of migrate-vstest-to-mtp, MIT.

A migration guide for moving .NET tests from VSTest to Microsoft.Testing.Platform, the test runner used to discover and execute tests.

In plain words
What is it for?
It helps switch test projects and CI pipelines to Microsoft.Testing.Platform and update commands from VSTest syntax to the new runner's syntax.
Why use it?
It updates project, command-line, and continuous-integration settings so the solution uses one supported test platform consistently.

Skill for Claude CodeCodex

Written for no agent in particular: nothing here depends on one.

Good fit It helps switch test projects and CI pipelines to Microsoft.Testing.Platform and update commands from VSTest syntax to the new runner's syntax.

Compare 6 skills from other repositories ↓
Install with agentmods
npx agentmods add skills/managedcode/dotnet-skills/migrate-vstest-to-mtp
Install

Getting it into your agent

One page per mod, every tool's command on it. A separate URL per tool would split the same page into five that compete with each other.

Any agent
npx skills add managedcode/dotnet-skills --skill migrate-vstest-to-mtp
Clone the repo
git clone --depth 1 https://github.com/managedcode/dotnet-skills

Made for: Claude Code, Codex.

Wrote this? Show the measurements

A badge with what this costs and how it scanned, read live from this page, so it follows the numbers instead of freezing them. Markdown for a README, HTML for a documentation site or a project page.

agentmods badge for migrate-vstest-to-mtp

README.md
[![agentmods](https://agentmods.dev/badge/skills/managedcode/dotnet-skills/migrate-vstest-to-mtp/github.svg)](https://agentmods.dev/skills/managedcode/dotnet-skills/migrate-vstest-to-mtp)
Your own site
<a href="https://agentmods.dev/skills/managedcode/dotnet-skills/migrate-vstest-to-mtp"><img src="https://agentmods.dev/badge/skills/managedcode/dotnet-skills/migrate-vstest-to-mtp/github.svg" alt="Measured on agentmods" height="20"></a>

Or the 80×15 button, for a site that already has a row of RSS and ATOM ones. Only the verdict fits; the numbers stay here.

agentmods 80×15 button for migrate-vstest-to-mtp

Your own site · 80×15
<a href="https://agentmods.dev/skills/managedcode/dotnet-skills/migrate-vstest-to-mtp"><img src="https://agentmods.dev/badge/skills/managedcode/dotnet-skills/migrate-vstest-to-mtp.svg" alt="Reviewed on agentmods" width="80" height="20"></a>
Per session 191 Skills are progressive disclosure: only the name and description are preloaded; the body loads when the skill is used.
When invoked 5,578 The whole file, excluding the scripts and references it only reads on demand.
Security scan A 0 findings. A grade says what 26 rules found in the file — not that it is safe.
Origin 92% copy Near-identical to another mod in the catalogue.
Token cost

What it costs to keep this loaded

Counted locally with the o200k_base tokenizer, which is exact for GPT models; Claude uses its own tokenizer and its counts differ. Treat this as one consistent yardstick across the catalogue rather than a bill. Prices are per million input tokens.

ModelPer sessionOnce invoked
Fable 5.1 $0.00191 $0.05578
Opus 5 $0.00096 $0.02789
Sonnet 5 $0.00038 $0.01116
Haiku 4.5 $0.00019 $0.00558

Measured 5d ago against content hash e4984767f47f, method: parsed. Prices are Anthropic first-party input rates as of 2026-09-10, from the pricing page.

Security

Grade A, and why

migrate-vstest-to-mtp scanned grade A with 0 findings against 26 rules in 11 categories — prompt injection, anti-refusal, data exfiltration, privilege escalation, supply chain, agent snooping, system-prompt leakage, SSRF and excessive agency — measured 5d ago.

A static scan of the body, not an audit. Every finding is printed with the line that produced it so you can judge whether it matters here. A mod is markdown that instructs an agent; that is exactly why what it instructs is worth reading.

Nothing flagged

None of the 26 patterns this scan looks for appear in this file: no shell pipes, no recursive deletes, no credential paths, no hidden text, no instruction-override or anti-refusal phrasing, no agent-config snooping. That is not a guarantee, it is the absence of the things that are checkable.

Origin

This is a copy

92% identical to migrate-vstest-to-mtp — 0 lines differ, which has more behind it and is treated as the original. This page carries a canonical link to it rather than competing with it.

catalog/Platform/Official-DotNet-Test-Migration/skills/migrate-vstest-to-mtp/SKILL.md · 421 lines

How it starts

The opening of the file, as written. The whole thing — 421 lines — stays where its author put it; the contents beside it link to each section on GitHub.

VSTest -> Microsoft.Testing.Platform Migration

Migrate a .NET test solution from VSTest to Microsoft.Testing.Platform (MTP). The outcome is a solution where all test projects run on MTP, dotnet test works correctly, and CI/CD pipelines are updated.

First Action

Inspect the supplied project, Directory.Build.props, global.json, and CI files before searching the web or answering from memory. Resolve the framework and SDK mode first: .NET 9 and earlier use the compatibility property plus the -- separator; .NET 10 native MTP uses global.json, removes that property, and passes MTP arguments without the separator. For central properties, never condition on IsTestProject in Directory.Build.props; use a property already available there, such as MSBuildProjectName.

Important: Do not mix VSTest-based and MTP-based .NET test projects in the same solution or run configuration -- this is an unsupported scenario.

When to Use

  • Switching from VSTest to Microsoft.Testing.Platform for any supported test framework
  • Enabling dotnet run / dotnet watch / direct executable execution for test projects
  • Enabling Native AOT or trimmed test execution
  • Replacing vstest.console.exe with dotnet test on MTP
  • Updating CI/CD pipelines from the VSTest task to the .NET Core CLI task
  • Updating dotnet test arguments from VSTest syntax to MTP syntax

When Not to Use

  • The project already runs on Microsoft.Testing.Platform and there is no remaining MTP behavioral difference to resolve (e.g., exit code 8 for zero tests discovered)
  • Migrating between test frameworks (e.g., MSTest to xUnit.net) -- different effort entirely
  • The project builds UWP or packaged WinUI test projects -- MTP does not support these yet
  • The solution mixes .NET and non-.NET test adapters (e.g., JavaScript or C++ adapters) -- VSTest is required
  • Upgrading MSTest versions -- use migrate-mstest-v1v2-to-v3 or migrate-mstest-v3-to-v4

Inputs

Input Required Description
Project or solution path No The .csproj, .sln, or .slnx entry point containing test projects. Discover it yourself by globbing the working directory; ask only when nothing is found or the choice is genuinely ambiguous
Test framework No MSTest, NUnit, xUnit.net v2, or xUnit.net v3. Auto-detected from package references
.NET SDK version No Determines dotnet test integration mode. Prefer the repository's global.json or explicitly stated CI SDK; use host dotnet --version only when the repository does not pin or state one
CI/CD pipeline files No Paths to pipeline definitions that invoke vstest.console or dotnet test

Read the full file on GitHub · 421 lines

Files

What ships with it

1 file beside SKILL.md in the same directory: the scripts, references and assets a skill reads on demand. Not counted in the per-session cost; read them before you install if any of them is executable.

Changes

What this file has done since we first saw it

Hashed on every crawl. A supply-chain change to an agent config is a question of when, not whether, so the history is kept rather than the latest state alone.

  1. 5d ago Changed · +28 lines · -71 tokens per session e4984767f47f
  2. 7d ago First seen · 393 lines · 262 tokens per session scan A 3d36d1296468

Subscribe to this mod's changes

migrate-vstest-to-mtp is a skill published in the GitHub repository managedcode/dotnet-skills (477 stars, last pushed 5d ago), licensed MIT. It adds 191 tokens to every session and 5,578 once invoked, about $0.0010 per session on Opus 5. A static security scan graded it A with 0 findings. It is 92% identical to migrate-vstest-to-mtp, differing in 0 lines, and is treated as a copy.

Related

Other skills, from other repositories

winui-ui-testing

Automated UI testing for Windows desktop apps — generate a batch test script with the winapp ui UI Automation harness, run all tests in one pass, read results. Covers element assertions, interactions, value checking (TextBox, ComboBox, ToggleSwitch), keyboard shortcuts and typing (send-keys), hover, drag-and-drop…

microsoft/win-dev-skills · 122 tokens

rust-development

Idiomatisk Rust-utvikling med cargo, clippy, error handling, async/tokio, unsafe og testing.

navikt/copilot · 27 tokens

playwright-testing

Generer og kjør Playwright E2E-tester for webapplikasjoner med page objects, auth fixtures og tilgjengelighetstester.

navikt/copilot · 33 tokens

e2e-testing-expert

Expert guide for End-to-End (E2E) testing with Playwright, unit/integration testing with Vitest, and CI/CD automated testing pipeline setup / Panduan ahli pengujian End-to-End (E2E) dengan Playwright, pengujian unit/integrasi dengan Vitest, dan otomatisasi CI/CD.

roedyrustam/vibes-plug · 74 tokens

mutation-testing

Use when running mutation testing, killing mutants, verifying test quality, checking mutation score, or analyzing survivors after the test baseline is green.

SebastienDegodez/copilot-instructions · 29 tokens

spec-driven-eval

Scores how completely an implementation fulfills a PRD/spec, case by case, and produces a single comparable final grade. Invoke only when explicitly named (e.g. run spec-driven-eval); do not auto-trigger. Use when benchmarking spec-driven implementations, grading acceptance criteria, evaluating whether a feature was…

tech-leads-club/agent-skills · 123 tokens