LESSON 03

安全なバグ修正・テスト・レビュー

不具合の再現、原因調査、小さな修正、テスト、差分レビューを一続きで行います。

中級レッスン日本語目安:45分更新:2026年10月18日公式仕様:2026-10-18Claude Codeバグ修正テストコードレビュー

このレッスンで学ぶこと

既存プロジェクトのバグ修正は、「エラーらしいものを消す」ことではありません。再現条件と期待する動作を整理し、原因についての根拠を集め、影響を限定した修正を行い、テストと差分で意図した動作を確認します。

1. 再現条件をそろえる

作業前に、次をメモします。

  • どの画面やコマンドで起きるか
  • エラーや誤った結果を起こす入力・操作
  • 現在の結果と期待する結果
  • 常に起きるか、特定条件だけで起きるか
  • 実行環境と、すでに試したこと

共有できない情報はテスト用の値に置き換え、個人情報や認証情報はプロンプトに含めません。既存の作業差分やプロジェクトのルールも確認します。

2. 原因の調査と修正計画を分ける

まず変更せずに、再現手順、関係するコード、関連テスト、原因候補を説明してもらいます。

この不具合を再現する手順、関係する処理、関連テストを調べてください。まだファイルを変更しないでください。確認できた事実と仮説を分け、原因候補ごとに根拠となるファイルと追加で確かめる方法を示してください。

調査結果を読み、原因が分からない場合は修正へ進まず、再現手順や入力条件を絞ります。計画には、変更するファイル、変更の目的、影響範囲、テスト方法、完了条件を含めます。

3. 最小の修正とテストを行う

計画に同意したら、対象と範囲を指定して修正を許可します。テストが不足している場合は、不具合が起きる条件を再現するテストを追加できるか相談します。既存テストの期待値を変えるだけで失敗を消すのではなく、要件との整合性を確認します。

テストコマンドを実行する前に、リポジトリに定義されたコマンドと副作用を確認します。依存追加、データベース変更、ネットワークアクセスなどが計画に含まれる場合は、必要性と影響について別に確認します。

4. 変更をレビューする

次を順番に確かめます。

  1. 変更ファイルが事前に合意した範囲内か
  2. 根本原因に対応する変更になっているか
  3. 周辺機能の動作を壊していないか
  4. 再現テストと関連テストを実際に実行したか
  5. 実行していないテストや未確認事項が明示されているか
  6. ドキュメント、型、エラー処理などの不足がないか
  7. 変更差分に秘密情報や無関係な変更が含まれていないか

Claude Codeには、変更ファイル、実行したテストと結果、未実施の検証を分けて報告するよう依頼できます。最終的な差分と画面・実行結果は自分でも確認してください。

演習:小さな不具合を直す

練習用の既存プロジェクトから、個人データや外部サービスに依存しない再現可能な不具合を一つ選びます。原因調査のみの依頼、修正計画のレビュー、修正の許可、テスト、差分レビューの順に進めます。

完了条件

  • 不具合の再現条件と期待結果を説明できる
  • 変更前に原因候補と根拠を確認した
  • 変更範囲とテスト方法に合意してから修正した
  • 関連するテストを実行し、結果と未確認事項を記録した
  • 最終差分を読み、変更を採用するか自分で判断した

参考資料

公式ドキュメントの参照先を2026年10月18日に確認しました。プロジェクトのルール、承認設定、利用環境が優先されます。