用途:该技能用于处理使用 xUnit 的 .NET 测试项目,覆盖添加、运行、调试和修复 xUnit 测试,并帮助团队判断项目当前使用 VSTest 还是 Microsoft.Testing.Platform。
主要能力:识别 xUnit 版本与运行器模型(xunit 通常为 v2,xunit.v3 为 v3;xunit.runner.visualstudio 加 Microsoft.NET.Test.Sdk 通常表示启用 VSTest 兼容;TestingPlatformDotnetTestSupport 或 UseMicrosoftTestingPlatformRunner 表示使用 Microsoft.Testing.Platform)。在缺少配置时可引导添加包,例如 dotnet add TEST_PROJECT.csproj package xunit.v3,可选 VSTest 桥接包 xunit.runner.visualstudio。建议先运行最小范围(单项目、单类、单 trait、单方法),优先用 [Theory] 做数据驱动覆盖、[Fact] 做单路径不变量检查,并保持 xunit.analyzers 启用。
使用方式:先读取最近的 AGENTS.md 确认范围与约束,从仓库获取真实测试命令;若无显式命令,可从 dotnet test PROJECT_OR_SOLUTION 开始。保持运行器模型一致,不要把 VSTest 专用开关混入 Microsoft.Testing.Platform 运行。xUnit v2 通常经 VSTest 运行,xUnit v3 可作为独立可执行文件用 dotnet run 运行,也可集成 Microsoft.Testing.Platform。
适用场景:xUnit v2/v3 项目的测试编写、运行、调试、修复,以及 CI 兼容性维护。
限制:不适用于 TUnit 或 MSTest 项目,也不适用于没有 xUnit 具体机制的通用测试策略。若仓库当前使用 TUnit 或 MSTest,不应自动迁移,除非明确要求迁移。诊断输出需保持精简,失败时只展示失败测试、根因和相关堆栈,避免倾倒完整日志或 TRX 等产物。