問題
開発者は、組織のデータを変更することなく、取引先トリガーが正しく動作していることを確認する必要があります。開発者は、取引先トリガーをテストするために何をすべきでしょうか。
- 開発者コンソールの[テスト]メニューを使用して、取引先トリガーのすべてのテストクラスを実行します。
- 開発者コンソールの匿名実行機能を使用して、’insert Account’DML文を実行します。
- VSCode IDEのデプロイを使用して、’insert Account’Apexクラスをデプロイします。
- Salesforceの[取引先]タブの[新規]ボタンを使用して、新しい取引先レコードを作成します。
正解
- 開発者コンソールの[テスト]メニューを使用して、取引先トリガーのすべてのテストクラスを実行します。
- 開発者コンソールの匿名実行機能を使用して、’insert Account’DML文を実行します。
- VSCode IDEのデプロイを使用して、’insert Account’Apexクラスをデプロイします。
- Salesforceの[取引先]タブの[新規]ボタンを使用して、新しい取引先レコードを作成します。
解説
それぞれの選択肢の理由について説明します。
□ 開発者コンソールの[テスト]メニューを使用して、取引先トリガーのすべてのテストクラスを実行します。
これは正解です。Salesforceでは、開発したトリガーやApexクラスの正確性を確認するために、テストクラスの作成と実行が必須です。開発者コンソールの[テスト]メニューを利用してテストクラスを実行することにより、トリガーが想定通りに機能しているかを検証できます。またテストクラスを作成することで、テストの実行は実際のデータベースには影響を与えずに行われます。
□ 開発者コンソールの匿名実行機能を使用して、’insert Account’DML文を実行します。
これは不正解です。匿名実行は開発者が一時的なApexコードを実行できる機能ですが、これによって実際のDML操作が実行され、データベースに変更が加わります。テスト目的であれば、データを変更せずに機能を検証できるユニットテストを用いるべきです。
□ VSCode IDEのデプロイを使用して、’insert Account’Apexクラスをデプロイします。
これは不正解です。デプロイプロセスは開発環境から本番環境へのコード移行を意味しますが、これはテストの実行ではありません。トリガーの動作をテストするためには、テストクラスとテストメソッドを用いて、コードが期待通りに動作することを確認する必要があります。
□ Salesforceの[取引先]タブの[新規]ボタンを使用して、新しい取引先レコードを作成します。
これは不正解です。この方法は実際に新しい取引先レコードを作成し、トリガーを発動させるものであり、テストではありません。テストクラスを使用することで、本番環境のデータを操作することなくトリガーの機能を安全に検証できます。
コメント