問題
Apexクラスのプライベートメソッドの単体テストをどのように作成する必要がありますか。
- SeeAllDataアノテーションを使用します
- Apexクラスにテストメソッドを追加します
- TestVisibleアノテーションを使用します
- Apexクラスをグローバルにします
正解
- SeeAllDataアノテーションを使用します
- Apexクラスにテストメソッドを追加します
- TestVisibleアノテーションを使用します
- Apexクラスをグローバルにします
解説
それぞれの選択肢の理由について説明します。
□ SeeAllDataアノテーションを使用します
これは不正解です。@SeeAllDataは、テストメソッドが実際の組織データにアクセスできるかどうかを制御するためのものです。privateメソッドのテストとは関係ありません。
□ Apexクラスにテストメソッドを追加します
これは不正解です。テストメソッドは、通常、別のテストクラスに含まれています。また、テストメソッド内からprivateメソッドを直接呼び出すことはできません。
□ TestVisibleアノテーションを使用します
これは正解です。@TestVisibleをprivateメソッドの前に配置することで、そのメソッドはテストクラスからアクセス可能になります。これにより、privateメソッドの単体テストを書くことができます。
□ Apexクラスをグローバルにします
これは不正解です。Apexクラスをグローバルにすることは、privateメソッドのテストのための適切な方法ではありません。グローバルなクラスは、任意のApexコードからアクセスできるようになりますが、これは通常、APIや他のパッケージからのアクセスが必要な場合にのみ行われます。
次の問題へ
【Salesforce 認定Platformデベロッパー】試験対策:第126問
問題 次のクラスとトリガーのコードがあります。 public class InsuranceRates{ public static final Decimal smokerCharge = 0.01; } trigger ContactTrigger on C…
前の問題へ
【Salesforce 認定Platformデベロッパー】試験対策:第124問
問題 Visualforceページで外部CSSからのスタイリングが必要な場合、開発者はどのタグを含める必要がありますか。 apex:includeStyles apex:includeScript apex:require …
1問目から復習する
【Salesforce 認定Platformデベロッパー】試験対策:第1問
問題 デバッグログに書き込まれるときのxの値は何ですか。 Integer x = 0; do { x = 1; x++; } while (x < 1); System.debug(x); 0 1 2 3 正解 0 1 2 3 解説 デバッ…
コメント