dotnet-test
مجموعهای جامع برای تولید، اجرای و بهبود کیفیت تستهای .NET و پروژههای چندزبانه
این Skill Bundle مجموعهای از ۲۳ مهارت تخصصی برای کار با تستهاست؛ از تولید unit test و اجرای تستها تا تحلیل coverage، ارزیابی کیفیت assertionها و شناسایی الگوهای مشکلساز. برای اکوسیستم .NET و زبانهای دیگری مانند Python، JavaScript، Java، Go و Rust نیز کاربرد دارد.
با استفاده از آن میتوانید تستهای جدید و سازگار با conventions پروژه بسازید، خطاهای تست را بررسی کنید و بفهمید کدام تستها واقعاً رفتار نرمافزار را اعتبارسنجی میکنند. این مجموعه به بهبود پوشش، کاهش تستهای سطحی و تصمیمگیری دقیقتر درباره کیفیت test suite کمک میکند.
چه چیزی میگیرید
- تولید unit test و scaffold کردن test project بر اساس ساختار پروژه
- اجرای تستها با امکان انتخاب test filter و بررسی نتایج
- تحلیل test coverage، CRAP score و نقاط کمپوشش
- ارزیابی تنوع و عمق assertionها و شناسایی تستهای کمارزش
- شناسایی anti-patternها، تستهای flaky و مشکلات نگهداری test suite
برای چه کاری خوب است
- تیمهایی که برای پروژههای .NET با MSTest، xUnit یا NUnit تست مینویسند
- توسعهدهندگانی که میخواهند coverage و کیفیت تستهای موجود را بهبود دهند
- پروژههای چندزبانهای که به تحلیل یا تولید تست در چند اکوسیستم نیاز دارند
- زمانی که باید پیش از merge، سلامت و ارزش واقعی test suite بررسی شود
برای چه کاری نیست
- تغییر رفتار production code بدون نیاز به تست یا بررسی کیفیت test suite
- پروژههایی که اصلاً تست خودکار ندارند و صرفاً به تست دستی نیاز دارند
- تحلیل امنیتی، performance testing یا تست رابط کاربری که خارج از تمرکز این مجموعه است
دربارهٔ این اسکیل
Install This Skill
CLI Manual
/plugin marketplace add dotnet/skills
/plugin install dotnet-test@dotnet-agent-skills
# This entry installs as a plugin, so there is no single SKILL.md to download.
open https://github.com/dotnet/skills/tree/main/plugins/dotnet-test
Skill bundle — 23 sub-skills
upstream is a skill bundle
This catalog entry is a skill bundle that ships 23 individual SKILL.md files. Each one is listed below — click through to read the full markdown on GitHub.
assertion-quality
Analyzes the variety and depth of assertions across test suites in any language. Use when the user asks to evaluate assertion quality, find shallow testing, identify assertion-free tests (no assertions or only trivial ones like Assert.IsNotNull / expect(x).toBeTruthy() / assert x is not None), flag self-referential or tautological assertions (output equals input on identity/round-trip operations), measure assertion coverage diversity, or audit whether tests verify different facets of correctness. Produces metrics and actionable recommendations. Polyglot: .NET (MSTest/xUnit/NUnit/TUnit), Python (pytest/unittest), TS/JS (Jest/Vitest/Mocha/Jasmine/node:test), Java (JUnit/TestNG), Go, Ruby (RSpec/Minitest), Rust, Swift (XCTest/Swift Testing), Kotlin (JUnit/Kotest), PowerShell (Pester), C++ (GoogleTest/Catch2/doctest). DO NOT USE FOR: writing new tests (use code-testing-agent, or writing-mstest-tests for MSTest), anti-patterns like flakiness or duplication (use test-anti-patterns), fixing assertions.
plugins/dotnet-test/skills/assertion-quality
code-testing-agent
- Generates and writes new unit tests for any programming language using a Research-Plan-Implement pipeline. Use when asked to generate tests, write unit tests, add tests, improve test coverage, create test project, achieve high coverage, comprehensive tests, or asked to scaffold a new test project for an app, service, or library. Supports C#, TypeScript, JavaScript, Python, Go, Rust, Java, and more. Orchestrates the code-testing-generator sub-agent through research, planning, and implementation phases so tests compile, pass, and follow project conventions. DO NOT USE FOR: running existing tests or test filters (use run-tests); diagnosing coverage plateaus or project-wide coverage/CRAP analysis without writing tests (use coverage-analysis); targeted method/class CRAP scores (use crap-score); MSTest assertion guidance, MSTest test pattern modernization, or fixing existing MSTest test code (use writing-mstest-tests).
code-testing-extensions
- Provides file paths to language-specifi