# Test Generator

> ユーザーが「テストを書いて」「テストケースを追加」「テストカバレッジを上げて」「テストが足りない」等と要求した時に発動。 既存の関数に対して包括的なテストケース（正常系・異常系・境界値）を自動生成する。 go testで実行可能な形式で出力し、カバレッジを向上させる。

- Skill: `kis9a/test-generator` (Agent Skill)
- Install (CLI): `npx skillmds@latest add kis9a/test-generator`
- Raw SKILL.md: https://api.skillmd.com/api/skills/kis9a/test-generator/raw
- Safety review: pending (external: skill-scanner PASS, skillspector PASS)
- Works with: Claude Code, Claude.ai, OpenAI Codex
- Category: Coding & Dev Tools
- Author: kis9a (https://skillmd.com/u/kis9a)
- Updated: 2026-09-22
- Page: https://skillmd.com/skills/kis9a/test-generator

---


### 手順
1. **対象関数の特定**: ユーザー指定または全関数から、テストが不足している関数を特定（Grep/Glob）
2. **既存テスト分析**: `*_test.go` を読み込み、既にカバーされているケースを確認
3. **カバレッジ確認**: `go test -cover` でカバレッジの穴を特定
4. **不足ケースの生成**: 以下のカテゴリでテストケースを追加
   - 正常系（典型的な入力）
   - 境界値（空配列、nil、0、負数、最大値）
   - 異常系（エラーケース）
5. **テストコード追加**: 既存の `*_test.go` ファイルに追加、または新規作成
6. **検証**: `go test -v -cover` で全テストがパスし、カバレッジが向上したことを確認
7. **レポート**: 追加したテストケースの数とカバレッジの改善度を報告

### ベストプラクティス
- テスト関数名は `Test<関数名><ケース名>` の形式（例: `TestSumEmpty`, `TestSumNegative`）
- Table-Driven Tests を活用して、複数ケースを効率的に記述
- エラーメッセージは具体的に（期待値と実際の値を明示）
- 既存のテストスタイルに合わせる

