csharp-xunit
Руководство по написанию эффективных модульных тестов с XUnit, включая стандартные и data‑driven подходы.
Суть
Что это за skill и зачем он нужен
Навык предоставляет набор рекомендаций по организации тестового проекта в .NET, выбору пакетов, структуре тестов, именованию, использованию атрибутов `[Fact]` и `[Theory]`, работе с фикстурами, написанию чистых утверждений и интеграции мок‑фреймворков (Moq, NSubstitute). Описаны лучшие практики для обычных и параметризованных тестов, а также советы по организации, категоризации и диагностике тестов с помощью `ITestOutputHelper`.
Установка
Как установить
npx skills add https://github.com/github/awesome-copilot --skill csharp-xunitСценарии
Когда использовать
Подходит
- При разработке новых .NET‑проектов, где требуется единичное тестирование с XUnit.
- Когда нужен единый стиль именования и структуры тестов (AAA, MethodName_Scenario_ExpectedBehavior).
- Для внедрения data‑driven тестов с `[Theory]`, `[InlineData]`, `[MemberData]` и `[ClassData]`.
- При необходимости использовать фикстуры (`IClassFixture`, `ICollectionFixture`) для общих ресурсов.
- Для интеграции мок‑объектов через Moq или NSubstitute в тесты XUnit.
- Когда требуется категоризация тестов с помощью атрибута `[Trait]`.
Не подходит
- Для интеграционных, UI‑ или нагрузочных тестов, которые требуют других фреймворков.
- Если проект написан не на C#/.NET (например, Java, Python).
- Когда в команде уже стандартизированы другие тестовые фреймворки (NUnit, MSTest) без планов перехода.
- Для простых скриптов без отдельного тестового проекта, где XUnit избыточен.
- Если требуется поддержка специфических функций, недоступных в XUnit (например, параметризация через сторонние плагины).
- Когда необходимо тестировать код, зависящий от внешних сервисов без возможности изоляции через моки.
Похожие
Похожие skills
diagnoseСистематизированный подход к отладке сложных программных ошибок.mattpocock/skillsОткрыть →env-and-assets-bootstrapАвтоматизированная настройка окружения и подготовка ресурсов для репозиториев воспроизведения научных работ.lllllllama/ai-paper-reproduction-skillОткрыть →next-best-practicesНабор рекомендаций и проверок для написания и ревью кода на Next.js.vercel-labs/next-skillsОткрыть →better-auth-best-practicesРуководство по настройке Better Auth: установка пакета, переменные окружения, конфигурация, CLI‑команды и рекомендации по использованию.better-auth/skillsОткрыть →developing-genkit-jsПошаговое руководство по созданию, миграции и оптимизации приложений на Genkit JS с акцентом на безопасное управление учётными данными.firebase/agent-skillsОткрыть →developing-genkit-dartAI‑SDK для Dart, предоставляющий единый интерфейс генерации кода, структурированных выводов, инструментов, потоков и агентов.firebase/agent-skillsОткрыть →