用途:为 .NET 项目提供代码覆盖率采集,适用于 CI 中需要行覆盖或分支覆盖的场景,也可用于在 coverlet.collector、coverlet.msbuild、coverlet.console 三种驱动之间做选择。
主要能力:按测试运行器模型选择驱动——VSTest 使用 coverlet.collector 配合 dotnet test --collect;MSBuild 属性驱动运行使用 coverlet.msbuild;独立场景使用 coverlet.console。覆盖率包只应加入测试项目,且同一测试项目内不得混用 coverlet.collector 与 coverlet.msbuild。原始覆盖率采集仅在需要人工渲染报告时配合 ReportGenerator。
使用方式:可在缺失时引导配置。先检测现状,例如 rg -n "coverlet\.(collector|msbuild)|CollectCoverage|XPlat Code Coverage" -g '.csproj' -g '.props' -g '*.targets' . 、dotnet tool list --local 、dotnet tool list --global 、command -v coverlet。再安装单一路径:collector 为 dotnet add TEST_PROJECT.csproj package coverlet.collector ;msbuild 为 dotnet add TEST_PROJECT.csproj package coverlet.msbuild ;console 为 dotnet new tool-manifest 与 dotnet tool install coverlet.console 。之后在 AGENTS.md 记录一条本地与 CI 命令,例如 collector 的 dotnet test TEST_PROJECT.csproj --collect:"XPlat Code Coverage" ,或 msbuild 的 dotnet test TEST_PROJECT.csproj /p:CollectCoverage=true /p:CoverletOutputFormat=cobertura ,或 console 的 dotnet tool run coverlet TEST_ASSEMBLY.dll --target "dotnet" --targetargs "test TEST_PROJECT.csproj --no-build" 。
适用场景与限制:适合需要为 .NET 测试引入覆盖率的仓库、需要为 CI 选择正确驱动的团队。不适用于仅做覆盖率报告渲染,或仓库已有意使用其他覆盖率引擎。若其他覆盖率引擎已接管,应返回 not_applicable。运行诊断输出需保持精简,失败时只展示相关失败测试与堆栈,单次诊断响应限制在 80 行 / 8 KiB。
该技能以 Ralph Loop 流程执行:先规划、执行一个步骤、复核、小批量修复并更新计划,直到结果可接受。最终结果格式包含 status、plan、actions_taken、validation_skills、verification、remaining 等字段。参考文件包括 references/commands.md、references/patterns.md、references/coverlet.md。具体收费、价格与更多平台细节暂未提供。