この文章は Salesforce 機械翻訳システムを使用して翻訳されました。詳細はこちらをご参照ください。
英語に切り替える

Apex 単体テスト

コードの単体テストを記述することは、Apex コード開発の基本です。本番組織に Apex コードをリリースするには、75% 以上のテストカバー率が必要です。さらに、テストカバー率にカウントされるテストに合格する必要があります。テストの実施は、アプリケーションの品質を確保するためには非常に重要です。さらに、将来、コードに変更を加えた場合に再実行できるテストのセットがあると、変更によって既存のコードに発生する潜在的な不具合を検出できます。

このテストカバー率要件は、アプリケーションのパッケージを作成して Force.comAppExchange に公開する場合にも適用されます。Salesforce では、サービスのアップグレードを行うとき、すべての組織の Apex 単体テストを実行して、品質と、ユーザ向けの既存の動作が変更されていないことを確認します。

メモ

テストデータの分離と一時性

デフォルトでは、Apex テストメソッドは、組織の既存のデータにアクセスできません。各テストメソッド用に独自のテストデータを作成する必要があります。このように、テストは組織データに依存しないため、依存するデータが存在しなくなっても、データの欠落が原因で失敗することはありません。

テストデータはデータベースにコミットされず、テスト実行が完了するとロールバックされます。つまり、テストで作成したデータは削除する必要がありません。テストの実行が完了したら、テスト実行中に作成されたデータは組織に保持されず、使用できなくなります。

テストデータはテストメソッドで作成することも、テストデータ作成用メソッドを含むユーティリティテストクラスを記述して他のテストからコールすることもできます。

組織にはテストがアクセスできるオブジェクトもあります。UserProfile など、組織の管理に使用するメタデータオブジェクトとオブジェクトです。