Skip to main content
Join the Agentforce Hackathon on Nov. 18-19 to compete for a $20,000 Grand Prize. Sign up now. Terms apply.

Trailhead Playground を起動する

学習の目的

このプロジェクトでは、次のことを行います。

  • デバッグセッションでブレークポイントとチェックポイントを設定して、コードのステップを順に実行し、特定の行番号の変数値を調べる。
  • Visual Studio Code を使用して Apex テストを呼び出し、デバッグログをダウンロードする。
  • Visual Studio Code 向け Apex Replay Debugger を使用してバグを見つけ、修正する。
メモ

メモ

日本語で受講されている方へ
Challenge は日本語の Trailhead Playground で開始し、かっこ内の翻訳を参照しながら進めていってください。Challenge での評価は英語データを対象に行われるため、英語の値のみをコピーして貼り付けるようにしてください。日本語の組織で Challenge が不合格だった場合は、(1) この手順に従って [Locale (地域)] を [United States (米国)] に切り替え、(2) [Language (言語)] を [English (英語)] に切り替えてから、(3) [Check Challenge (Challenge を確認)] ボタンをクリックしてみることをお勧めします。

翻訳版 Trailhead を活用する方法の詳細は、自分の言語の Trailhead バッジを参照してください。

はじめに

「設計フェーズで検出されなかったバグをコーディングフェーズで検出するにはコストが 10 倍かかり、デバッグフェーズで検出するコストはさらに 10 倍になる。」- Nikolai Bezroukov 博士、『The Art of Debugging (デバッグの技術)』

てんとう虫の上にかざされた虫眼鏡で表されたソフトウェアバグの検出

デバッグとテストは関連していますが、ソフトウェア開発上の異なるプロセスです。テストはエラーを見つけて報告するものです。デバッグはそうしたエラーの原因を突き止めて修正するものです。そして、Nikolai Bezroukov 博士によると、コード内のバグを見つけて始末するには早ければ早いほどよいということです。

Apex がサポートするテストでは、Apex テストの隔離実行のための完全なフレームワークが提供され、Sandbox やスクラッチ組織のような本番以外の組織も対象となります。Apex のデバッグのサポートは、System.debug ステートメント、デバッグログ、デバッガーによって提供されます。

追跡フラグが有効になっている場合、Apex コードによってデバッグログが生成されます。これは、トランザクション内のすべての操作の記録です。Apex Replay Debugger では、デバッグログを使用してライブデバッグセッションをシミュレーションします。対話型デバッガーと同じように、変数値、コールスタック、ブレークポイントなどのログに記録された情報が提供され、Apex コードをデバッグできます。

Apex Replay Debugger とは?

Apex Replay Debugger はデバッグログを調査することで Apex コードをデバッグできる無料のツールで、Visual Studio Code をクライアントとして使用します。再生デバッガーの実行では、他のデバッガーに期待するのと同じ機能を使用できます。変数を参照したり、ブレークポイントを設定したり、変数にマウスポインターを置いて現在の値を確認したりできます。何千行ものログを手動で解析したり、コードのあちこちに System.debug ステートメントを入れて変数値を表示したり、コード実行パスを追跡したりする必要はなくなりました。

また、Apex Replay Debugger を使用すれば、他のユーザーと非同期に作業してコラボレーションを行うことで問題を解決するのも容易になります。再生デバッガーセッションは任意の再生対応デバッグログから起動できるため、クライアントや同僚がデバッグログを共有して問題解決に協力できます。デバッグセッションを開始するには、Visual Studio Code でデバッグログを開き、ファイル内の任意の行を右クリックしてデバッガーを起動します。

Visual Studio Code で開いたデバッグログからの Apex Replay Debugger の起動

デバッグプロセスはいくつかのステップの反復です。Apex コードを編集し、コードを組織にリリースし、バグのあるシナリオを再現し、結果のデバッグログをダウンロードし、そのデバッグログを使用して Apex Replay Debugger を起動します。

メモ

再生対応のデバッグログには、ログカテゴリが Visualforce の場合はログレベルが FINER または FINEST のステートメントが含まれ、ログカテゴリが Apex コードの場合はログレベルが FINEST のステートメントが含まれています。ログレベルとログカテゴリについての詳細は「デバッグログレベル」ドキュメントを参照してください。

Apex Interactive Debugger とは?

Apex Interactive Debugger も Salesforce Extension Pack に含まれています。このデバッガーを使用すると、お客様は Visual Studio Code をクライアントとして使用し、自分の Apex コードを Sandbox やスクラッチ組織でリアルタイムでデバッグできます。

Apex Interactive Debugger には、管理パッケージをインストールする登録者と協力する独立系ソフトウェアベンダー (ISV) パートナー向けの機能もあります。管理コードは表示できないように保護されているため、登録者は自分の組織の ISV コードをデバッグできません。ISV カスタマーデバッガーを使用すれば、ISV は登録者と協力して、登録者の組織に固有の問題をデバッグできます。

Apex Interactive Debugger または ISV カスタマーデバッガーの価格設定の詳細については、Salesforce のアカウントエグゼクティブにお問い合わせください。

このプロジェクトでは無料の Apex Replay Debugger を設定して使用する方法に焦点を絞っています。

Trailhead Playground を作成する

このプロジェクト用に、新しい Trailhead Playground を作成します。このページの最下部までスクロールし、[Launch (起動)] の横にある下矢印をクリックして [Create a Trailhead Playground (Trailhead Playground を作成)] を選択します。

リソース

Salesforce ヘルプで Trailhead のフィードバックを共有してください。

Trailhead についての感想をお聞かせください。[Salesforce ヘルプ] サイトから新しいフィードバックフォームにいつでもアクセスできるようになりました。

詳細はこちら フィードバックの共有に進む