KanaLog~かなさんのSalesforce関連ログ~

自称「Salesforceキャンペーン芸人」のKanaさんの活動記録です。Salesforce Developer Group TokyoとService Cloud Trailblazersに運営として参加しています。

TrailheadのハンズオンのChallengeでエラーになった時のデバッグ方法について

皆さん、Trailheadやってますか?

Salesforce資格の更新試験や「Salesforce 認定上級 Platform デベロッパー」の一部がTrailheadのバッチになったため、必要に迫られてTrailheadをやり始めた人も多いのではないでしょうか。

 

ご存知の方も多いと思いますが、Trailheadには理解度確認のため、単元の終わりに「選択式のクイズ」または「ハンズオン」があります。

「選択式のクイズ」は何度間違えてもよい(ただし取得できるポイントは減る)ので、いつかは正解にたどりつけます。

しかし「ハンズオン」はそうはいきません。

「ハンズオン」は読んで字のごとく、要求された仕様を組織(TrailheadのPlayground、Developerなど)で作成し、それをTrailheadがチェックするのですが、Challengeの通らないことといったら・・・。

Challengeが通らない場合には、エラーメッセージが表示されるのですが、大変残念なことにメッセージとエラー原因と合っていないことがよくあります。

ではChallengeのときにどんなチェックが行われているでしょうか?
実は、開発者コンソールで確認することができるんです!

 

手順は以下の通り

1.ハンズオン組織の右上の歯車マークをクリックし、表示されるメニューの「Developer Console」を選択します

 f:id:endoukanako:20181209123504j:plain

2.開発者コンソールが表示されます

 f:id:endoukanako:20181209123630j:plain

 

3.開発者コンソールを開いたまま、Challengeを実行します

 f:id:endoukanako:20181209123652j:plain

 

4.開発者コンソールの「Logs」タブにChallengeのログが表示されます

  Statusの列でChallengeのチェックの成功・失敗を確認することができます

  (画像では3つのチェックが実行され、2つが成功、1つが失敗しています)

 f:id:endoukanako:20181209124129j:plain

 

5.確認したいログの列をクリックして選択された状態にし、右クリックで表示されるメニューで「Open Raw Log」を選択します

 f:id:endoukanako:20181209123945j:plain

 

6.Logの詳細が表示されます

  2行目以降にある「Excute Anonymous:」の部分を確認することで、どんなチェック(プログラム)が実行されたのか確認することができます

 f:id:endoukanako:20181209124404j:plain

 

7.またログの詳細を確認することで、チェックのどこが失敗したのか知ることができます

 (画像ではExcute Anonymousのプログラム[6]、つまり6行目のAssertionが失敗していることが分かります)

 f:id:endoukanako:20181209125028j:plain

 

RawLogの詳しい解説は『Apex開発者ガイド』の「開発者コンソールのログの操作」を参照ください↓
https://developer.salesforce.com/docs/atlas.ja-jp.216.0.apexcode.meta/apexcode/apex_debugging_system_log_console.htm?search_text=%E9%96%8B%E7%99%BA%E8%80%85%E3%82%B3%E3%83%B3%E3%82%BD%E3%83%BC%E3%83%AB

 

いかかだったでしょうか?

この記事が皆さんのTrailheadライフの一助になれば幸いです。

  

最後になりますが、この投稿は「Salesforce Platform Advent Calendar 2018」の10日目の記事です。

qiita.com