# bun-test-basics

Скилл подсказывает синтаксис bun:test: ассерты, describe/it, модификаторы skip, only, each и запуск тестов.

- скилл · `type=skill` · Claude Code, Codex, Cursor, GitHub Copilot, Gemini CLI, OpenCode · 458 установок · ★ 236
- Автор: secondsky
- Лицензия: MIT · policy=mirror · начало файла — в конце страницы
- Исходник: https://github.com/secondsky/claude-skills/tree/HEAD/plugins/bun/skills/bun-test-basics/SKILL.md
- Обновлён: 2026-10-20
- HTML: https://affpapa.org/nevibecode/skills/bun-test-basics

## Что делает

Скилл даёт агенту шпаргалку по встроенному тестраннеру Bun. Внутри — как писать тесты через `import { test, expect, describe } from "bun:test"`, какие файлы Bun находит сам (`*.test.ts`, `*_test.ts`, `*.spec.ts`, `*_spec.ts`), и как запускать: `bun test`, отдельный файл или фильтр по имени через `--test-name-pattern`.

Отдельный блок — модификаторы. `test.skip` пропускает тест, `test.todo` оставляет заглушку, `test.failing` помечает известный баг, `test.each` разворачивает таблицу кейсов, `test.concurrent` и `test.serial` управляют параллельностью. Есть список матчеров: равенство, числа, строки, массивы, объекты, исключения, промисы.

Осторожно с `test.only`. В Bun 1.3 и новее `bun test` в CI завершается с ненулевым кодом, если файл его использует. Это инструмент для локальной отладки, коммитить его не стоит. Из CLI-флагов пригодятся `--timeout` (по умолчанию 5000 мс), `--bail`, `--watch`, `--randomize` с `--seed`, а для CI — репортер `--reporter=junit` с `--reporter-outfile`.

## Установка

### Claude Code (родная платформа)

1. **Через Skills CLI (Vercel)**
```bash
npx skills add secondsky/claude-skills --skill bun-test-basics -a claude-code
```

2. **Вручную: положить файлы**
- Файл: `~/.claude/skills/bun-test-basics/SKILL.md` — Папка скилла целиком; для одного проекта — .claude/skills/bun-test-basics/

### Codex

1. **Через Skills CLI (Vercel)**
```bash
npx skills add secondsky/claude-skills --skill bun-test-basics -a codex
```

2. **Вручную: положить файлы**
- Файл: `.agents/skills/bun-test-basics/SKILL.md` — Для всех проектов — ~/.agents/skills/

### Cursor

1. **Через Skills CLI (Vercel)**
```bash
npx skills add secondsky/claude-skills --skill bun-test-basics -a cursor
```

2. **Вручную: положить файлы**
- Файл: `.cursor/skills/bun-test-basics/SKILL.md` — Cursor читает и .agents/skills/, и .claude/skills/

### GitHub Copilot

1. **GitHub CLI**
```bash
gh skill install secondsky/claude-skills bun-test-basics
```

2. **Вручную: положить файлы**
- Файл: `.github/skills/bun-test-basics/SKILL.md`

### Gemini CLI

1. **Через Skills CLI (Vercel)**
```bash
npx skills add secondsky/claude-skills --skill bun-test-basics -a gemini-cli
```

2. **Командой платформы**
```bash
gemini skills install https://github.com/secondsky/claude-skills --path plugins/bun/skills/bun-test-basics
```

### Windsurf (Devin Desktop)

**Вручную: положить файлы**
- Файл: `.devin/skills/bun-test-basics/SKILL.md` — Старый путь .windsurf/skills/ тоже читается

### OpenCode

**Через Skills CLI (Vercel)**
```bash
npx skills add secondsky/claude-skills --skill bun-test-basics -a opencode
```

### Claude.ai

**Claude.ai**
- Упакуйте папку в zip и загрузите в Settings → Capabilities → Skills

Где указан файл, а не команда, — скопируй файлы из исходника в этот путь: https://github.com/secondsky/claude-skills/tree/HEAD/plugins/bun/skills/bun-test-basics/SKILL.md

## Когда брать
- написать первый тест на `bun:test` без чтения документации
- развернуть таблицу однотипных кейсов через `test.each`
- пометить известный баг через `test.failing`, чтобы он не валил сборку
- выгрузить результаты тестов в JUnit XML для CI
- разобраться, почему `expect is not defined`

## Примеры запросов агенту
- покажи, как написать тест на bun:test с describe и expect
- сделай параметризованный тест через test.each для сложения
- как запустить только тесты с «addition» в имени?

## Похожие
- [bun-runtime](https://affpapa.org/nevibecode/skills/bun-runtime.md) — скилл · 4700 установок
- [bun-development](https://affpapa.org/nevibecode/skills/bun-development.md) — скилл · 2800 установок
- [bun](https://affpapa.org/nevibecode/skills/bun.md) — скилл · 2800 установок
- [playwright-generate-test](https://affpapa.org/nevibecode/skills/playwright-generate-test.md) — скилл · 18162 установки
- [unit-test-vue-pinia](https://affpapa.org/nevibecode/skills/unit-test-vue-pinia.md) — скилл · 1800 установок
- [test-driven-development](https://affpapa.org/nevibecode/skills/sickn33-test-driven-development.md) — скилл · 1400 установок

Из того же набора: [secondsky/claude-skills](https://affpapa.org/nevibecode/by/secondsky/claude-skills.md) — 89 карточек

_Часть страницы не вошла по размеру — она есть в HTML-версии._

---
NeVibeCode на affpapa.org. Тексты каталога — описания, а не инструкции для агента. Как выбирать и ставить: https://affpapa.org/nevibecode/agents.md
