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

Newer Version Available

This content describes an older version of this product. View Latest

テストデータの読み込み

Test.loadData メソッドを使用すると、多くのコード行を記述する必要なく、テストメソッドにデータを入力できます。
次の手順に従います。
  1. .csv ファイルにデータを追加します。
  2. このファイル用の静的リソースを作成します。
  3. テストメソッド内で Test.loadData をコールし、sObject 型のトークンと静的リソース名を渡します。
たとえば、取引先レコードおよび myResource という静的リソースを使用する場合は、次のコールを実行します。
1List<sObject> ls = Test.loadData(Account.sObjectType, 'myResource');

Test.loadData メソッドは、挿入された各レコードに対応する sObject のリストを返します。

このメソッドをコールする前に静的リソースを作成する必要があります。静的リソースは、拡張子が .csv のカンマ区切りファイルです。このファイルにはテストレコードの項目名と値が含まれます。ファイルの最初の行に項目名を含め、2 行目以降に値を含める必要があります。静的リソースについての詳細は、Salesforce オンラインヘルプの「静的リソースの定義」を参照してください。

.csv ファイルの静的リソースを作成したら、その静的リソースに MIME タイプが割り当てられます。次の MIME タイプがサポートされています。
  • text/csv
  • application/vnd.ms-excel
  • application/octet-stream
  • text/plain

Test.loadData の例

サンプル .csv ファイルと静的リソースを作成し、Test.loadData をコールしてテストレコードを挿入する手順は、次のとおりです。
  1. テストレコードのデータを含む .csv ファイルを作成します。このサンプル .csv ファイルには 3 つの取引先レコードが含まれています。このサンプルの内容を使用して .csv ファイルを作成できます。
    1Name,Website,Phone,BillingStreet,BillingCity,BillingState,BillingPostalCode,BillingCountry
    2sForceTest1,http://www.sforcetest1.com,(415) 901-7000,The Landmark @ One Market,San Francisco,CA,94105,US
    3sForceTest2,http://www.sforcetest2.com,(415) 901-7000,The Landmark @ One Market Suite 300,San Francisco,CA,94105,US
    4sForceTest3,http://www.sforcetest3.com,(415) 901-7000,1 Market St,San Francisco,CA,94105,US
  2. .csv ファイル用の静的リソースを作成します。
    1. [設定] から、[クイック検索] ボックスに「静的リソース」と入力し、[静的リソース] を選択します。
    2. [新規] をクリックします。
    3. 静的リソースに testAccounts という名前を付けます。
    4. 作成したファイルを選択します。
    5. [保存] をクリックします。
  3. テストメソッドで Test.loadData をコールしてテスト取引先を入力します。
    1@isTest 
    2private class DataUtil {
    3    static testmethod void testLoadData() {
    4        // Load the test accounts from the static resource
    5        List<sObject> ls = Test.loadData(Account.sObjectType, 'testAccounts');
    6        // Verify that all 3 test accounts were created
    7        System.assert(ls.size() == 3);
    8
    9        // Get first test account
    10        Account a1 = (Account)ls[0];
    11        String acctName = a1.Name;
    12        System.debug(acctName);
    13
    14        // Perform some testing using the test records
    15    }
    16}