Sponsored
今回は、Salesforceでバッチ処理を実装した際のテストコードの書き方を備忘録として紹介します。
ここでは、バッチクラス ApexSampleBatch をテストするテストクラスApexSampleBatchTest の作成についての例です。
テストクラスの書き方
簡単な解説
Test.startTest() と Test.stopTest() はテストのための特別なメソッドで、これらの間で行われる処理は一般的なガバナ制限から切り離されています。
また、Test.stopTest() は、非同期処理(ここではバッチ処理)がすべて終了することを保証します。
これにより、バッチ処理の結果に対してアサートを行うことが可能になります。
ひとこと
外部コールアウトのテストも忘れがちなので、備忘録としてメモしておきましょう。
【Salesforce】Apex Batch を即時実行させるスクリプト | Lazy Developer
Salesforce 開発時には、時には Apex Batch でバッチ処理を実装することがあります。 バッチ処理は通常、画面上で Apex をスケジュールし、定期的に実行させます。 しかし、開発中やテスト時には夜間のバッチ処理を待つのは非効率です。
Apex Test はしっかり書くように日頃から心がけましょうね。
最終的な工数やトラブルの削減につながりますよ。