← Back to list

test-quality-audit
by TakumiOkayasu
dotfiles for work
⭐ 0🍴 0📅 Jan 23, 2026
SKILL.md
name: test-quality-audit description: テストスイートの品質監査。Usefulness Score評価と削除候補特定。
Test Quality Audit
トリガー
- テストスイートのレビュー依頼
- テスト実行時間が長い
- Flaky testが発生
- 新規参画者のオンボーディング
監査プロセス
1. 全テスト一覧化
2. Usefulness Score算出
3. カテゴリ分類
4. 削除候補特定
5. 改善提案
Usefulness Score評価
計算式
Score = Impact(1-5) × Probability(1-5)
判定基準
| スコア | 判定 | アクション |
|---|---|---|
| ≥20 | CRITICAL | 必須維持、最優先修正 |
| 15-19 | KEEP | 維持 |
| 10-14 | REVIEW | 再検討、統合検討 |
| <10 | REMOVE | 削除候補 |
監査チェックリスト
1. ビジネス価値監査
- テストはビジネスロジックを検証しているか?
- フレームワーク機能のテストではないか?
- ユーザー価値に直結するか?
NG例:
it('should render component')→ フレームワークテストit('should call useEffect')→ 実装詳細テスト
2. 重複監査
- 同じ振る舞いを複数テストしていないか?
- E2Eで担保されているのにUnitでも書いていないか?
- 統合可能なテストがないか?
3. 信頼性監査
- Flaky testはないか?
- 環境依存テストはないか?
- 実行順序依存はないか?
Flaky判定: 10回実行で1回でも異なる結果 = Flaky
4. 保守性監査
- テスト名から意図が分かるか?
- 失敗時の原因特定が容易か?
- テストデータは明確か?
5. パフォーマンス監査
- 実行時間は許容範囲か?
- 不要なsetup/teardownはないか?
- 並列実行可能か?
削除対象パターン
即時削除
| パターン | 理由 |
|---|---|
| フレームワークテスト | フレームワークの責務 |
| ゲッター/セッターテスト | 価値なし |
| コンストラクタテスト | 価値なし |
| モック検証のみ | 実装詳細 |
| 常に成功するテスト | 意味なし |
検討後削除
| パターン | 条件 |
|---|---|
| 重複テスト | 上位層で担保済み |
| 古いテスト | 対応機能が削除済み |
| 複雑すぎるテスト | 保守コスト > 価値 |
監査レポートフォーマット
# テスト品質監査レポート
## サマリー
| 指標 | 値 |
|------|-----|
| 総テスト数 | X |
| CRITICAL (≥20) | X |
| KEEP (15-19) | X |
| REVIEW (10-14) | X |
| REMOVE (<10) | X |
## 削除推奨
| テスト | スコア | 理由 |
|--------|--------|------|
| test_xxx | 6 | フレームワークテスト |
## 改善推奨
| テスト | 現スコア | 改善案 |
|--------|----------|--------|
| test_yyy | 12 | 境界値追加で15+ |
## カバレッジギャップ
| 領域 | 現状 | 必要 |
|------|------|------|
| Money | 18 | 20+ |
自動監査ルール
# .github/workflows/test-audit.yml
rules:
- name: no-framework-tests
pattern: "expect.*toBeInTheDocument|toBeDefined"
action: warn
- name: no-implementation-details
pattern: "toHaveBeenCalledWith.*internal"
action: warn
- name: no-flaky-tests
pattern: "retry|flaky|skip"
action: error
禁止事項
- ❌ 監査なしのテスト追加
- ❌ スコア未記載のテスト
- ❌ 削除候補の放置
- ❌ Flakyテストの許容
- ❌ フレームワークテストの維持
品質ゲート
| 指標 | 閾値 |
|---|---|
| REMOVE比率 | <5% |
| Flaky率 | 0% |
| 平均スコア | ≥15 |
| カバレッジギャップ | 0 |
Score
Total Score
50/100
Based on repository quality metrics
✓SKILL.md
SKILL.mdファイルが含まれている
+20
○LICENSE
ライセンスが設定されている
0/10
○説明文
100文字以上の説明がある
0/10
○人気
GitHub Stars 100以上
0/15
○最近の活動
3ヶ月以内に更新がある
0/10
○フォーク
10回以上フォークされている
0/5
✓Issue管理
オープンIssueが50未満
+5
✓言語
プログラミング言語が設定されている
+5
○タグ
1つ以上のタグが設定されている
0/5
Reviews
💬
Reviews coming soon