v
vibecode
Все скиллы
01Скилл
Дебаг
vibecode
/test

Генератор тестов

Создаёт юнит-тесты для функции, файла или модуля. С нормальным coverage edge-cases, не только happy path.


02Куда положить
~/.claude/skills/test/SKILL.md

Создай эту папку и файл (если их нет), вставь содержимое ниже. Затем в Claude Code: /exit и запусти claude заново — команда появится.

03Содержимое

Скопируй всё что внутри блока и вставь в файл по пути выше.

SKILL.md
1---2name: test3description: Сгенерировать unit-тесты для функции, файла или модуля. Использовать когда user пишет /test с путём или именем функции.4---5 6# /test — генерация тестов7 8## Алгоритм9 101. Определи что тестировать: путь к файлу или имя функции из аргумента112. Прочитай код и пойми сигнатуру (входы, выходы, побочные эффекты)123. Определи test-фреймворк по проекту (vitest / jest / node:test / pytest)134. Сгенерируй тесты покрывающие:14   - Happy path (нормальные входы)15   - Edge cases (пустые строки, нули, отрицательные, границы)16   - Error paths (невалидные входы, исключения)17   - Async race conditions (если применимо)185. Помести тесты в правильный файл (`*.test.ts` рядом с исходником, или в `tests/`)19 20## Правила21 22- Один `describe` блок на функцию/класс23- Один `it` блок на сценарий — короткое имя в формате "should X when Y"24- Никаких `anyOf`, `expect.anything()` — конкретные assertions25- Mocks только когда необходимо (внешние API, время, файлы)26- Если функция чистая (без побочных эффектов) — без mocks вообще27 28## Анти-паттерны29 30- Не покрывать `expect(result).toBeDefined()` — это бесполезный тест31- Не дублировать тесты разными способами32- Не тестировать чужие библиотеки (это их работа)
04Как использовать

Примеры команд

  • 01/test ./lib/utils.ts
  • 02/test функция normalizeEmail
  • 03/test покрой edge cases в payment.ts