Test Generator

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

kis9a Updated

File contents

手順

  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 を活用して、複数ケースを効率的に記述
  • エラーメッセージは具体的に(期待値と実際の値を明示)
  • 既存のテストスタイルに合わせる

kis9a/claude-skills-demo/tree/main/.claude/skills/test-generator commit 8af6235ef3

Frequently asked questions

npx skillmds@latest add kis9a/test-generator