testcontainers — скилл для Claude Code: интеграционные тесты в .NET
Скилл для интеграционных тестов .NET: поднимает реальные базы, Redis и брокеры сообщений в Docker вместо моков.
npx skills add wshaddix/dotnet-skills --skill testcontainers -a claude-codeЧто делает testcontainers
Скилл описывает паттерны Testcontainers для интеграционных тестов в .NET. Вместо заглушек тесты работают с настоящими SQL Server, PostgreSQL, MySQL, Redis, RabbitMQ или Kafka — каждый в своём контейнере. Контейнеры получают случайные порты, поэтому параллельные прогоны не конфликтуют, а жизненный цикл Testcontainers закрывает сам.
Внутри — примеры кода на C#: тестовый класс реализует IAsyncLifetime, в InitializeAsync стартует контейнер и открывается соединение, в DisposeAsync всё освобождается. Отдельно разобраны подключение NuGet-пакетов (Testcontainers, xunit, драйверы баз), ожидание готовности через WaitStrategy, миграции и очистка данных между тестами. Есть справочные файлы по контейнерам баз, брокерам сообщений и продвинутым сценариям вроде сетей и томов.
Для запуска нужен Docker: без него контейнеры не стартуют, и тесты упадут на этапе инициализации. Проверьте, что демон Docker доступен в вашей CI-среде, иначе весь смысл подхода теряется. Пароли и строки подключения в примерах зашиты прямо в код — для реального проекта их стоит вынести в конфигурацию.
Какие задачи решает
- проверить SQL-запросы и ограничения на настоящей базе, а не на моках
- поднять RabbitMQ или Kafka в тесте и убедиться, что сообщения доходят
- прогнать миграции и изменения схемы перед выкаткой
- изолировать тесты друг от друга через отдельные контейнеры
- проверить поведение кэша Redis без ручной настройки окружения
Примеры запросов агенту
- напиши интеграционный тест репозитория заказов с Testcontainers и PostgreSQL
- добавь в тестовый класс IAsyncLifetime и подними контейнер SQL Server
- проверь, что миграции применяются на чистой базе в контейнере
Как установить testcontainers
1Через Skills CLI (Vercel)
npx skills add wshaddix/dotnet-skills --skill testcontainers -a claude-code2Вручную: положить файлы
~/.claude/skills/testcontainers/SKILL.mdПапка скилла целиком; для одного проекта — .claude/skills/testcontainers/
1Через Skills CLI (Vercel)
npx skills add wshaddix/dotnet-skills --skill testcontainers -a codex2Вручную: положить файлы
.agents/skills/testcontainers/SKILL.mdДля всех проектов — ~/.agents/skills/
1Через Skills CLI (Vercel)
npx skills add wshaddix/dotnet-skills --skill testcontainers -a cursor2Вручную: положить файлы
.cursor/skills/testcontainers/SKILL.mdCursor читает и .agents/skills/, и .claude/skills/
1GitHub CLI
gh skill install wshaddix/dotnet-skills testcontainers2Вручную: положить файлы
.github/skills/testcontainers/SKILL.md1Через Skills CLI (Vercel)
npx skills add wshaddix/dotnet-skills --skill testcontainers -a gemini-cli2Командой платформы
gemini skills install https://github.com/wshaddix/dotnet-skills --path skills/testcontainersВручную: положить файлы
.devin/skills/testcontainers/SKILL.mdСтарый путь .windsurf/skills/ тоже читается
Через Skills CLI (Vercel)
npx skills add wshaddix/dotnet-skills --skill testcontainers -a opencodeClaude.ai
Упакуйте папку в zip и загрузите в Settings → Capabilities → Skills
По шагам, с командами для каждой платформы: Как установить скилл в Claude Code: пять способов
Из того же набора5
Похожие
Рядом в теме «Тесты и QA»
Всё по теме «Тесты и QA» →Вопросы о testcontainers
Как установить testcontainers в Claude?
Выполните npx skills add wshaddix/dotnet-skills --skill testcontainers -a claude-code. Скилл появится по пути ~/.claude/skills/testcontainers/SKILL.md.
Что делает скилл testcontainers?
Описывает паттерны Testcontainers для интеграционных тестов в .NET: запуск реальных баз данных, Redis и брокеров сообщений в Docker-контейнерах вместо моков.
Что нужно, чтобы скилл заработал?
Docker с доступным демоном и NuGet-пакеты: Testcontainers, xunit и драйвер нужной базы или брокера.