広告枠を募集中 ご相談ください

IntelliJ IDEAでJetBrains AI Assistantを活用して複雑なコードの解説と単体テスト生成を行う方法

365Finds Editorial
Wiki 記事 11,430 本収録

あなたの AI で 365 Wiki を使う

下のプロンプトをコピーして、普段使っている AI に貼り付け、そのまま質問してください。

完全版 Skill をダウンロード

まずはプロンプトでお試しください。よく使う場合は完全版 365Wiki Skill をインストールすると、毎回貼り付ける必要がありません。普段使う AI がなければ、Gemini や Microsoft Copilot のウェブ版でも使えます。

レガシーコードの改修や不慣れなコードベースの解析を行う際、開発者は複雑に入り組んだロジックや境界条件、予期せぬ例外の把握に多大な時間を費やします。IntelliJ IDEAにおける JetBrains AI Assistant は、生成AIをエディターおよびビルドツールチェーンに直接統合することで、ブラウザとIDEを行き来するコピー&ペーストの作業をなくし、複雑な処理の解読や単体テスト(ユニットテスト)の自動生成をIDE内で完結させます。

単なる外部チャットAIとは異なり、JetBrains AI Assistant はプロジェクトの抽象構文木(AST)、依存関係、ディレクトリ構造を深く認識して動作します。クラス間の呼び出し階層を理解するだけでなく、テストルート(src/test/java や src/test/kotlin など)を自動検出し、専用の差分画面でテストコードを安全に確認できます。本記事では、環境セットアップからコード解説の実行手順、実用的な単体テストの生成・調整手法までを解説します。


1. 導入前の準備と動作要件

IntelliJ IDEA で AI Assistant を利用するには、以下の環境要件とライセンスを確認する必要があります。

  1. IDEバージョン: IntelliJ IDEA 2023.3 以降(Community Edition の場合は 2024.1.1 以降)が必要です。
  2. プラグインの導入: AI Assistant プラグインはデフォルトではバンドルおよび有効化されていません。Settings | Plugins | Marketplace を開き、検索バーに AI Assistant と入力して Install をクリックします。
  3. サブスクリプションとライセンス: 有効な JetBrains AI サブスクリプション(Free、Pro、Ultimate、Enterprise)、または独自のAPIキーを持ち込む BYOK(Bring Your Own Key)構成が必要です。新規ユーザーは、IDEヘッダーにある JetBrains AI ウィジェットから 30 日間の AI Pro 無料トライアルをすぐに開始できます。

セットアップが完了すると、エディターの右クリックメニューやインテンションアクションから各種 AI 機能を呼び出せるようになります。


2. エディター上での複雑なコード解説

入れ子になった条件分岐や、複雑なアルゴリズム、見慣れないサードパーティ製ライブラリの処理を把握したい場合、コンテキストを考慮したコード解説機能が役立ちます。

実行手順

  1. 対象コードの選択: エディター内で、調査したいメソッドや処理ブロックをドラッグしてハイライトします。
  2. アクションメニューの表示: 選択範囲を右クリックするか、ショートカットキー Alt+Enter(macOS は Option+Enter)を押します。
  3. Explain Code の選択: メニューから AI Actions | Explain Code を選択します。
  4. AI Chat での解説確認: 右側の AI Chat ツールウィンドウが開き、選択したコードの全体像、処理の流れ、例外ハンドリングの挙動、計算量や注意すべきエッジケースがわかりやすく整理されて表示されます。

コンテキスト参照(Attachments)の確認

外部のチャットツールでは貼り付けられた断片しか読めませんが、JetBrains AI Assistant は周辺コードや型定義を参照します。AI Chat の回答上部にある Attachments ドロップダウンをクリックすると、この回答を生成するために参照されたプロジェクトファイルやシンボルの一覧を確認できます。

挿入言語(RegExp・SQL)の特化解説

IntelliJ IDEA は文字列リテラル内の言語注入(Language Injections)を認識します。正規表現や SQL クエリ、Cron 式にカーソルがある場合、メニュー項目が最適化されます。


3. AI Assistant を利用した単体テストの自動生成

境界値のテストや null チェック、異常系例外のハンドリングなど、テストケースを手作業ですべて網羅するのは骨の折れる作業です。JetBrains AI Assistant は、既存のテストフレームワーク(JUnit 4/5、TestNG、Mockito など)に合わせたテストコードを自動構築します。

単体テスト生成の流れ

  1. 対象の指定: テストを作成したいクラス宣言またはメソッドシグネチャ内にキャレット(カーソル)を置きます。
  2. アクションの呼び出し: Alt+Enter を押すか右クリックして、AI Actions | Generate Unit Tests を選択します。
  3. AI Diff タブでの検証: 生成されたテストコードは直接ファイルに書き込まれず、独立した AI Diff タブで左右に並べて表示されます。メソッド名、モック設定、アサーション、インポートを隅々まで確認できます。

テストコードの調整と再生成

AI Diff 画面では、結果を保存する前に細かなカスタマイズが可能です。

テストファイルの反映と保存

内容に問題がなければ、Accept all をクリックして保存します。


4. 実行時エラーやテスト失敗のAI診断

テスト実行時やアプリケーション起動時にテストが失敗したり未処理の例外が発生した場合、Run または Debug コンソールに長いスタックトレースが出力されます。

ログを手動で検索サイトにコピーする必要はありません。

  1. コンソール内のエラーメッセージやアサーション失敗行の横に表示される Explain with AI ボタンをクリックするか、ログを右クリックして Explain Error Message with AI を選択します。
  2. AI Chat が失敗の原因(配列のインデックス超過、モックの未設定、NULL参照など)を解析し、具体的な修正コードを提案します。
  3. Apply をクリックするとソースコードに修正が直接反映され、Insert Snippet at Caret をクリックすると現在のカーソル位置にコードが挿入されます。

5. 開発者が意識すべきベストプラクティス

開発スピードと品質の高さを両立させるため、以下の点に留意して利用することを推奨します。


参考資料