Test クラス
名前空間
Test のメソッド
Test のメソッドは次のとおりです。すべてのメソッドが静的です。
createStub(parentType, stubProvider)
署名
public static Object createStub(System.Type parentType, System.StubProvider stubProvider)
パラメータ
- parentType
- 型: System.Type
- スタブする Apex クラスの種別。
- stubProvider
- System.StubProvider
- StubProvider インターフェースの実装。
戻り値
型: Object
テストで使用するスタブオブジェクトを返します。
使用方法
createStub() メソッドは System.StubProvider インターフェースと共に動作します。StubProvider インターフェースを実装して、スタブオブジェクトの動作を定義します。続いて、createStub() メソッドを使用して、スタブオブジェクトを作成します。スタブオブジェクトでメソッドを呼び出すと、StubProvider インターフェースの handleMethodCall() メソッドがコールされ、スタブメソッドの動作が実行されます。
enableChangeDataCapture()
署名
public static void enableChangeDataCapture()
戻り値
型: void
使用方法
enableChangeDataCapture() メソッドにより、[変更データキャプチャ] の [設定] で選択されたエンティティに関係なく、Apex テストで変更イベントトリガを起動できます。enableChangeDataCapture() メソッドは、[設定] で選択されたエンティティには影響しません。
enqueueBatchJobs(numberOfJobs)
署名
public static List<Id> enqueueBatchJobs(Integer numberOfJobs)
パラメータ
- numberOfJobs
- 型: Integer
- キューに追加するテストジョブの数。
使用方法
このメソッドを使用してテスト時間を短縮します。テストに組織の実際のバッチジョブを使用する代わりに、このメソッドを使用してバッチジョブのキューへの追加をシミュレーションします。enqueueBatchJobs(numberOfJobs) を使用する方が、実際のバッチジョブをキューに追加するより迅速です。
getEventBus()
getStandardPricebookId()
署名
public static Id getStandardPricebookId()
使用方法
このメソッドでは、テストで組織データを照会できるかどうかに関係なく、組織内の標準価格表の ID を返します。デフォルトでは、@isTest(SeeAllData=true) アノテーションが付加されていない限り、テストで組織データを照会することはできません。
標準価格で価格表エントリを作成するには、標準価格表の ID が必要です。このメソッドを使用して標準価格表 ID を取得すれば、テストで価格表エントリを作成できます。
invokeContinuationMethod(controller, request)
署名
public static Object invokeContinuationMethod(Object controller, Continuation request)
パラメータ
- controller
- 型: Object
- 継続要求を呼び出すコントローラクラスのインスタンス。
- request
- 型: Continuation
- コントローラクラスのアクションメソッドから返される継続。
戻り値
型: Object
継続コールバックメソッドの応答。
使用方法
継続をテストするには、Test.setContinuationResponse メソッドと Test.invokeContinuationMethod メソッドを使用します。テストコンテキストでは、継続のコールアウトは外部サービスに送信されません。これらのメソッドを使用することで、擬似応答を設定でき、ランタイムから継続コールバックメソッドがコールされ擬似応答が処理されます。
Test.invokeContinuationMethod をコールする前に、Test.setContinuationResponse をコールします。Test.invokeContinuationMethod をコールすると、継続に関連付けられたコールバックメソッドがランタイムで実行されます。コールバックメソッドでは、Test.setContinuationResponse で設定された擬似応答が処理されます。
isRunningTest()
署名
public static Boolean isRunningTest()
戻り値
型: Boolean
loadData(sObjectToken, resourceName)
署名
public static List<sObject> loadData(Schema.SObjectType sObjectToken, String resourceName)
パラメータ
- sObjectToken
- 型: Schema.SObjectType
- テストレコードを挿入する sObject 型。
- resourceName
- 型: String
- 読み込むテストレコードを含む .csv ファイルに対応する静的リソース。この名前は大文字と小文字を区別しません。
newSendEmailQuickActionDefaults(contextId, replyToId)
setContinuationResponse(requestLabel, mockResponse)
署名
public static void setContinuationResponse(String requestLabel, System.HttpResponse mockResponse)
パラメータ
- requestLabel
- 型: String
- 継続 HTTP 要求に対応する一意の表示ラベル。この表示ラベルは Continuation.addHttpRequest によって返されます。
- mockResponse
- 型: HttpResponse
- Test.invokeContinuationMethod によって返される擬似応答。
戻り値
型: void
使用方法
継続をテストするには、Test.setContinuationResponse メソッドと Test.invokeContinuationMethod メソッドを使用します。テストコンテキストでは、継続のコールアウトは外部サービスに送信されません。これらのメソッドを使用することで、擬似応答を設定でき、ランタイムから継続コールバックメソッドがコールされ擬似応答が処理されます。
Test.invokeContinuationMethod をコールする前に、Test.setContinuationResponse をコールします。Test.invokeContinuationMethod をコールすると、継続に関連付けられたコールバックメソッドがランタイムで実行されます。コールバックメソッドでは、Test.setContinuationResponse で設定された擬似応答が処理されます。
setCreatedDate(recordId, createdDatetime)
署名
public static void setCreatedDate(Id recordId, Datetime createdDatetime)
戻り値
型: void
setCurrentPage(page)
署名
public static Void setCurrentPage(PageReference page)
パラメータ
- page
- 型: System.PageReference
戻り値
型: Void
setCurrentPageReference(page)
署名
public static Void setCurrentPageReference(PageReference page)
パラメータ
- page
- 型: System.PageReference
戻り値
型: Void
setFixedSearchResults(fixedSearchResults)
署名
public static Void setFixedSearchResults(ID[] fixedSearchResults)
パラメータ
- fixedSearchResults
- 型: ID[]
- opt_set_search_results で指定されたレコード ID のリストは、WHERE 句または LIMIT 句に指定されていない場合、通常は SOSL クエリで返される結果を置き換えます。これらの句が SOSL クエリにある場合、固定された検索結果のリストに適用されます。
戻り値
型: Void
使用方法
opt_set_search_results が指定されていない場合、後続のすべての SOSL クエリは結果を返しません。
詳細は��「SOSL クエリの単体テストへの追加」を参照してください。
setMock(interfaceType, instance)
署名
public static Void setMock(Type interfaceType, Object instance)
パラメータ
- interfaceType
- 型: System.Type
- instance
- 型: Object
戻り値
型: Void
使用方法
setReadOnlyApplicationMode(applicationMode)
署名
public static Void setReadOnlyApplicationMode(Boolean applicationMode)
パラメータ
- applicationMode
- 型: Boolean
戻り値
型: Void
使用方法
getApplicationReadWriteMode() システムメソッドも参照してください。
DML 例外のシミュレーションなど、参照のみモードのテストに無関係の目的で setReadOnlyApplicationMode を使用しないでください。
例
次の例では、アプリケーションモードを参照のみに設定し、新しい取引先レコードを挿入しようとしています。結果は例外となります。その後、アプリケーションモードはリセットされ、正しく挿入されます。
testInstall(installImplementation, version, isPush)
署名
public static Void testInstall(InstallHandler installImplementation, Version version, Boolean isPush)
パラメータ
- installImplementation
- 型: System.InstallHandler
- InstallHandler インターフェースを実装するクラス
- version
- 型: System.Version
- 登録者組織にインストールされた既存パッケージのバージョン番号を指定します。
- isPush
- 型: Boolean
- (省略可能) アップグレードがプッシュかどうかを指定します。デフォルト値は、false です。
戻り値
型: Void
例
testSandboxPostCopyScript(script, organizationId, sandboxId, sandboxName)
署名
public static void testSandboxPostCopyScript(System.SandboxPostCopy script, Id organizationId, Id sandboxId, String sandboxName)
パラメータ
- スクリプト
- 型: System.SandboxPostCopy
- SandboxPostCopy インターフェースを実装するクラス。
- organizationId
- 型: Id
- Sandbox 組織 ID
- sandboxId
- 型: Id
-
SandboxPostCopy スクリプトに指定される Sandbox ID。
- sandboxName
- 型: String
- SandboxPostCopy スクリプトに指定される Sandbox の名前。
戻り値
型: void
使用方法
このメソッドでは、テストのインストールが失敗すると実行時例外が発生します。
例
「SandboxPostCopy の実装例」を参照してください。
testUninstall(uninstallImplementation)
署名
public static Void testUninstall(UninstallHandler uninstallImplementation)
パラメータ
- uninstallImplementation
- 型: System.UninstallHandler
- UninstallHandler インターフェースを実装するクラス
戻り値
型: Void