以下は過去問の兼備忘であり, 決して問題提供や100%の解説をするつもりはない.
Q1. 開発者はAccountオブジェクトにトリガーを作成し, トリガーが適切にバルク項目であるかどうかをテストしたいと考えている. 開発者チームは一意の名前を持つ200の取引先レコードを使用してトリガーをテストする必要があると判断した.最小限のコードで単体テスト内にテストデータを作成するにはどの2つのことを行う必要がありますか?
A.Test.loadDataを使用して、テストメソッドにデータを入力します。
B.テストクラスで@isTest(seeAllData = true)アノテーションを使用します。
C.テストクラスで@isTest(isParallel = true)アノテーションを使用します。
D.テストデータを含む静的リソースを作成します。
解答: A, D
考察: https://developer.salesforce.com/docs/atlas.ja-jp.apexcode.meta/apexcode/apex_testing_load_data.htm
Q2. 取引先のデフォルトでbeforeトリガーが起動するアクションはどれ?
A.データローダーとバルクAPIを使用してデータをインポートする
B.選択リストの名前の変更または置換
C.一括アドレス更新ツールを使用してアドレスを更新する
D.リードを取引先責任者、取引先に変換する
解答: A
バルクAPIは, 大量のデータを処理するときに便利らしい(
https://developer.salesforce.com/docs/atlas.ja-jp.api_asynch.meta/api_asynch/asynch_api_intro.htm).
-- 設問に対するHelp --
https://trailhead.salesforce.com/ja/trailblazer-community/feed/0D54V000074oj6ISAQ
Q3. A社には, コールセンターエージェントがインバウンドサービスデスクコールを処理するときに使用するマルチスクリーンフローがある.フローのステップの1つでエージェントには, 外部の注文管理システムからリアルタイムで取得され, 画面に表示される注文番号と日付のリストが表示される必要がある. この要件を満たすために開発者は何を使用する必要がありますか?
A.アウトバウンドメッセージ
B.呼び出し可能なメソッド
C.ApexRESTクラス
D.Apexコントローラー
解答: C
※用語メモ
ガバナ制限 = ガバナ制限とは, システムリソースの使いすぎを防ぎ安定性と性能を維持するためのルールや制限のことを指す言葉.
Q4. トリガーが同じオブジェクトとイベントに関連付けられている場合の正しい実行順序を記述しているのはどれですか?
A.トリガーはトリガー名のアルファベット順に実行されます。
B.トリガーの実行順序は保証できません。
C.トリガーは作成された順序で実行されます。
D.トリガーは変更された順序で実行されます。
解答: B
Q5. 開発者は次のコードをデバッグし, 取引先が作成されない理由を特定している.
「Accounta = new Account(Name = 'A'); Database.insert(a、false);」
問題のデバッグに役立てるためには, コードをどのように変更する必要がある?
A.2番目の挿入メソッドパラメータをTRUEに設定します
B.insertメソッドの前にSystem.debug()ステートメントを追加します
C.挿入メソッドの戻り値をSaveResult変数に収集します
D.挿入メソッドの周りにtry / catchを追加します
解答: C
Database.insert(a, ⚪︎⚪︎)⚪︎⚪︎にfalseを設定することで, 呼び出しが「部分的成功」モードで実行される. 処理中にエラーが発生しても例外はスローされず, SaveResultオブジェクトが成功したかどうかを示す. この機能は大量のデータを処理する際や複数レコードに対してデータベース操作を行う時に有用である. レコードの成功と失敗を個別に確認できるから, エラーハンドリングやロギングに役立つ.