プログラムの実装や機能追加の際、コードレビューや自己テストで見落としがちなのが「潜在的なバグ・例外処理・境界値テスト」です。
本記事では、経験豊富なシニアエンジニアの視点で変更コードの潜在リスク・テストケース・仕様確認ポイントを網羅的に洗い出す「コードレビュー支援AIプロンプト」を全文公開します!
【コピペOK】コードレビュー観点洗い出しプロンプト全文
以下のプロンプト(整形済みテキスト枠)の {変更内容} と {コードや差分} を入力してAIにチェックさせてください。
あなたは経験豊富なソフトウェアエンジニアです。 次の変更内容について、レビュー観点を洗い出してください。
変更内容:{変更内容}
対象コード:
{コードや差分}
出力形式:
・重大な不具合リスク
・仕様確認が必要な点
・テストすべきケース
・リファクタリング候補
指摘は重要度順に並べ、理由を短く添えてください。
プロンプトの設計思想と4つのメリット
このプロンプトは、単純な構文チェックではなく、システムの安定性と安全性を高めるプロレベルのレビュー観点を抽出します。
📌 プロンプトの4大メリット
- 重大不具合リスクの早期発見: セキュリティホールやメモリリーク、排他制御の問題を優先抽出
- 仕様曖昧さの指摘: 考慮漏れしやすい境界条件やエラーハンドリングの仕様確認事項を提示
- 具体的なテストケースの洗い出し: 単体テスト・結合テストで実施すべき異常系テストパターンを提示
- リファクタリング候補の提案: 可読性や保守性を向上させる修正案を理由付きで整理
実践的な入力例(サンプル)
あなたは経験豊富なソフトウェアエンジニアです。 次の変更内容について、レビュー観点を洗い出してください。
変更内容:ユーザーログイン処理において、連続失敗回数が5回を超えた場合にアカウントを15分間ロックする処理を追加した。
対象コード:
python
def authenticate_user(username, password):
user = get_user(username)
if user.failed_attempts >= 5:
return False, "Account locked"
if not check_password(user, password):
user.failed_attempts += 1
save_user(user)
return False, "Invalid credentials"
user.failed_attempts = 0
save_user(user)
return True, "Login successful"
出力形式:
・重大な不具合リスク
・仕様確認が必要な点
・テストすべきケース
・リファクタリング候補
指摘は重要度順に並べ、理由を短く添えてください。
まとめ
コード実装前後にAIで観点をセルフチェックすることで、レビューの手戻り防止とシステム品質の向上を実現できます。
ぜひ本プロンプトを開発フローに組み込んでご活用ください!
