К основному содержанию
скилл CX Codex

vitest · pproenca — скилл для Claude Code: что делает и как установить

Скилл даёт ИИ-агенту 44 правила для написания, отладки и ускорения тестов на Vitest. Помогает настроить моки, изолировать окружение и разобрать нестабильные проверки.

Установить в Claude Code · Через Skills CLI (Vercel) Все способы и платформы ↓
npx skills add pproenca/dot-skills --skill vitest -a claude-code
Открыть на GitHub

Что делает vitest

Скилл содержит 44 правила, распределённых по 8 категориям с разным уровнем приоритета. Все правила ранжированы по силе влияния. База охватывает асинхронные проверки, сброс моков и параметры изоляции. Внутри собраны чёткие предписания: например, вызывать vi.waitFor для ожидания асинхронных условий или использовать happy-dom вместо jsdom для ускорения прогона.

Справочник помогает агенту находить утечки общего состояния между тестами. Он подсказывает, как правильно выбирать между vi.spyOn и vi.mock, а также как настроить шардинг для CI.

Этот скилл не решает задачи TDD и не разбирает перехват сетевых вызовов через MSW: эти темы вынесены в отдельные навыки test-tdd и test-msw. Специфичные конструкции Jest здесь тоже не рассматриваются.

Какие задачи решает

  • настроить изоляцию и сброс моков между тестами
  • устранить ложные срабатывания и флаки в асинхронных проверках
  • ускорить прогон тестов в CI/CD с помощью шардинга и happy-dom
  • провести код-ревью тестовых файлов по шаблонам Vitest

Примеры запросов агенту

  • Помоги исправить флакающий асинхронный тест с таймерами в Vitest
  • Проверь конфигурацию Vitest и оптимизируй скорость выполнения тестов в CI
  • Напиши моки через vi.spyOn для сервиса авторизации без утечки состояния

Как установить vitest

1Через Skills CLI (Vercel)

npx skills add pproenca/dot-skills --skill vitest -a claude-code

2Вручную: положить файлы

~/.claude/skills/vitest/SKILL.md

Папка скилла целиком; для одного проекта — .claude/skills/vitest/

По шагам, с командами для каждой платформы: Как установить скилл в Claude Code: пять способов

Из того же набора45

react-hook-form Оптимизирует клиентские формы на React Hook Form 7.82.0 и защищает от лишних ререндеров при подписках на поля, валидации и интеграции UI-библиотек. CX Codex +1 3 000установок emilkowal-animations Набор из 58 правил веб-анимации на базе подходов Эмиля Ковальски для React и CSS. Помогает настроить кривые плавности, жесты и тайминги. CX Codex +1 2 800установок nuqs Скилл с 39 правилами по nuqs: типизированные парсеры, адаптеры, интеграция с Server Components и оптимизация обновлений URL. Пригодится, когда агент пишет или рефакторит код с URL-состоянием. CX Codex +1 2 300установок clean-architecture Скилл с 42 правилами из книги Роберта Мартина: подсказывает агенту, куда направлять зависимости и где проводить границы слоёв. CX Codex +1 2 000установок code-simplifier Скилл для ИИ-агентов: чистит недавно изменённый код, снижает вложенность и дублирование, сохраняя поведение программы. CX Codex +1 1 600установок expo-react-native-performance Набор из 42 правил оптимизации приложений на Expo и React Native. Помогает настроить запуск, списки на FlashList, анимации и рендеринг без ручного поиска узких мест. CX Codex +1 1 500установок framer-motion Скилл оптимизирует анимации Framer Motion в React: предотвращает лишние ререндеры, уменьшает размер бандла и настраивает переходы жестов или скролла. CX Codex +1 1 100установок msw Скилл с 45 правилами по MSW v2: настройка, хендлеры, интеграция с тестами, GraphQL. Пригодится, когда агент пишет или правит моки HTTP-запросов. CX Codex +1 842установок

Другие версии vitest

Похожие

vitest-testing secondsky Скилл для написания юнит- и интеграционных тестов на Vitest в проектах на TypeScript и JavaScript. Пригодится, когда нужно быстро настроить конфиг, моки и покрытие. CX Codex +1 1 200установок vitest-skill TestMu AI Генерирует юнит-тесты на Vitest для JavaScript и TypeScript проектов. Помогает настроить моки через vi и протестировать компоненты React. CX Codex +1 448установок writing-tests spencerpauly Анализирует исходный код, определяет тестовый раннер и пишет юнит- или интеграционные тесты с моками и граничными случаями. CX Codex +1 499установок vitest-unit-testing-cursorrules-prompt-file PatrickJS Правило задаёт Cursor поведение эксперта по Vitest и TypeScript: пишет юнит-тесты на бизнес-логику и утилиты, мокает зависимости через vi.mock. ★ 41 011звёзд репо pytest-skill TestMu AI Скилл для ИИ-агентов, который пишет тесты pytest: фикстуры, parametrize, маркеры, мокинг и conftest. Пригодится, когда нужно покрыть Python-код тестами без ручной возни. CX Codex +1 412установок vitest-midscene-e2e web-infra-dev Скилл объединяет Vitest и Midscene для создания E2E-тестов на естественном языке под Web, Android и iOS. Помогает быстро развернуть бойлерплейт или наладить автотесты без селекторов. CX Codex +1 2 100установок

Рядом в теме «Тесты и QA»

Всё по теме «Тесты и QA» →

Вопросы о vitest

Как установить vitest в Claude Code?

Выполните команду npx skills add pproenca/dot-skills --skill vitest -a claude-code в терминале.

Что делает скилл vitest?

Он загружает в память агента 44 правила по работе с Vitest, разбитых на 8 категорий от критических асинхронных паттернов до структуры файлов. Агент сверяется с ними при написании тестов, настройке окружения и поиске причин медленных проверок.

Подходит ли этот скилл для TDD или работы с MSW?

Нет, правила TDD и мокирование запросов через MSW в этот набор не входят. Для них автор рекомендует использовать отдельные скиллы test-tdd и test-msw.

Исходный текст

SKILL.md · MIT
---
name: vitest
description: Vitest testing framework patterns for test setup, async testing, mocking with vi.*, snapshots, and test performance (formerly test-vitest). This skill should be used when writing or debugging Vitest tests. This skill does NOT cover TDD methodology (use test-tdd skill), API mocking with MSW (use test-msw skill), or Jest-specific APIs.
---

# Vitest Best Practices

Comprehensive performance optimization and best practices guide for Vitest testing framework. Contains 44 rules across 8 categories, prioritized by impact to guide test writing, refactoring, and code review.

## When to Apply

Reference these guidelines when:
- Writing new Vitest tests
- Debugging flaky or slow tests
- Setting up test configuration
- Reviewing test code in PRs
- Migrating from Jest to Vitest
- Optimizing CI/CD test performance

## Rule Categories by Priority

| Priority | Category | Impact | Prefix |
|----------|----------|--------|--------|
| 1 | Async Patterns | CRITICAL | `async-` |
| 2 | Test Setup & Isolation | CRITICAL | `setup-` |
| 3 | Mocking Patterns | HIGH | `mock-` |
| 4 | Performance | HIGH | `perf-` |
| 5 | Snapshot Testing | MEDIUM | `snap-` |
| 6 | Environment | MEDIUM | `env-` |
| 7 | Assertions | LOW-MEDIUM | `assert-` |
| 8 | Test Organization | LOW | `org-` |

## Quick Reference

### 1. Async Patterns (CRITICAL)

- `async-await-assertions` - Await async assertions to prevent false positives
- `async-return-promises` - Return promises from test functions
- `async-fake-timers` - Use fake timers for time-dependent code
- `async-waitfor-polling` - Use vi.waitFor for async conditions
- `async-concurrent-expect` - Use test context expect in concurrent tests
- `async-act-wrapper` - Await user events to avoid act warnings
- `async-error-handling` - Test async error handling properly

### 2. Test Setup & Isolation (CRITICAL)

- `setup-beforeeach-cleanup` - Clean up state in afterEach hooks
- `setup-restore-mocks` - Restore mocks after each test
- `setup-avoid-shared-state` - Avoid shared mutable state between tests
- `setup-beforeall-expensive` - Use beforeAll for expensive one-time setup
- `setup-reset-modules` - Reset modules when testing module state
- `setup-test-factories` - Use test factories for complex test data

### 3. Mocking Patterns (HIGH)

- `mock-vi-mock-hoisting` - Understand vi.mock hoisting behavior
- `mock-spyon-vs-mock` - Choose vi.spyOn vs vi.mock appropriately
- `mock-implementation-not-value` - Use mockImplementation for dynamic mocks
- `mock-msw-network` - Use MSW for network request mocking
- `mock-avoid-overmocking` - Avoid over-mocking
- `mock-type-safety` - Maintain type safety in mocks
- `mock-clear-between-tests` - Clear mock state between tests

### 4. Performance (HIGH)

- `perf-pool-selection` - Choose the right pool for performance
- `perf-disable-isolation` - Disable test isolation when safe
- `perf-happy-dom` - Use happy-dom over jsdom when possible
- `perf-sharding` - Use sharding for CI parallelization
- `perf-run-mode-ci` - Use run mode in CI environments
- `perf-bail-fast-fail` - Use bail for fast failure in CI

### 5. Snapshot Testing (MEDIUM)

- `snap-inline-over-file` - Prefer inline snapshots for small values
- `snap-avoid-large` - Avoid large snapshots
- `snap-stable-serialization` - Ensure stable snapshot serialization
- `snap-review-updates` - Review snapshot updates before committing
- `snap-describe-intent` - Name snapshot tests descriptively

### 6. Environment (MEDIUM)

- `env-per-file-override` - Override environment per file when needed
- `env-setup-files` - Use setup files for global configuration
- `env-globals-config` - Configure globals consistently
- `env-browser-api-mocking` - Mock browser APIs not available in test environment

### 7. Assertions (LOW-MEDIUM)

- `assert-specific-matchers` - Use specific matchers over generic ones
- `assert-edge-cases` - Test edge cases and boundaries
- `assert-one-assertion-concept` - Test one concept per test
- `assert-expect-assertions` - Use expect.assertions for async tests
- `assert-toequal-vs-tobe` - Choose toBe vs toEqual correctly

### 8. Test Organization (LOW)

- `org-file-colocation` - Colocate test files with source files
- `org-describe-nesting` - Use describe blocks for logical grouping
- `org-test-naming` - Write descriptive test names
- `org-test-skip-only` - Use skip and only appropriately

## How to Use

Read individual reference files for detailed explanations and code examples:

- [Section definitions](references/_sections.md) - Category structure and impact levels
- [Rule template](assets/templates/_template.md) - Template for adding new rules
- [async-await-assertions](references/async-await-assertions.md) - Example rule file
- [mock-vi-mock-hoisting](references/mock-vi-mock-hoisting.md) - Example rule file

## Related Skills

- For TDD methodology, see `test-tdd` skill
- For API mocking with MSW, see `test-msw` skill
- For TypeScript testing patterns, see `typescript` skill

## Full Compiled Document

For the complete guide with all rules expanded: `AGENTS.md`

© pproenca · MIT · pproenca/dot-skills

Смотрите также

Спонсоры проекта

Компании, которые помогают держать аналитику открытой