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

deploy について

deploy コールは、次のすべてが一致する必要がある場合にのみ正常に完了します。
  • Apex コードの少なくとも 75% が単体テストでカバーされており、かつすべてのテストが成功している。
    次の点に注意してください。
    • 本番組織にリリースするときに、組織の名前空間内のすべての単体テストが実行されます。
    • System.debug へのコールは、Apex コードカバー率の対象とはみなされません。
    • テストメソッドとテストクラスは、Apex コードカバー率の対象とはみなされません。
    • Apex コードの 75% が単体テストでカバーされている必要がありますが、カバー率を上げることだけに集中すべきではありません。アプリケーションのすべてのユースケース (正・誤両方の場合や単一データだけでなく複数データの場合) の単体テストを作成するようにしてください。このような多様なユースケースのテストコードを実装することが 75% 以上のカバー率につながります。
  • すべてのトリガについて何らかのテストを行う。
  • すべてのクラスとトリガが正常にコンパイルされる。

一度に複数の deploy Metadata API コールを実行することはできません。

Force.com 移行ツールは、リリーススクリプトに組み込み可能なタスク deploy を提供します。組織のクラスとトリガが含まれるように build.xml サンプルを変更できます。deploy タスクのプロパティは次のとおりです。

username
Salesforce 本番組織にログインするためのユーザ名。
password
Salesforce 本番組織にログインするための関連パスワード。
serverURL
ログインする Salesforce サーバの URL。値を指定しない場合、デフォルトは www.salesforce.com です。
deployRoot
リリースする他のメタデータと同様に、Apex クラスおよびトリガを含むローカルディレクトリ。必要なファイル構造を作成する最適な方法は、組織または Sandbox から取得する方法です。詳細は、retrieveCode についてを参照してください。
  • Apex クラスファイルは、classes という名前のサブディレクトリ内にある必要があります。次の名前の 2 つのファイルが各クラスにある必要があります。
    • classname.cls
    • classname.cls-meta.xml
    たとえば、MyClass.clsMyClass.cls-meta.xml です。-meta.xml ファイルにはクラスの API バージョンと状況 (有効/無効) が含まれます。
  • Apex トリガファイルは、triggers という名前のサブディレクトリ内にある必要があります。次の名前の 2 つのファイルが各トリガにある必要があります。
    • triggername.trigger
    • triggername.trigger-meta.xml
    たとえば、MyTrigger.triggerMyTrigger.trigger-meta.xml です。-meta.xml ファイルにはトリガの API バージョンと状況 (有効/無効) が含まれます。
  • ルートディレクトリには、リリースするすべてのクラス、トリガ、およびその他のオブジェクトをリストした XML ファイル package.xml が含まれます。
  • ルートディレクトリには、組織から削除するすべてのクラス、トリガ、およびその他のオブジェクトをリストした XML ファイル destructiveChanges.xml が必要に応じて含まれます。
checkOnly
クラスとトリガがリリース先環境にリリースされるかどうかを指定します。このプロパティは boolean 値を持ち、組織にクラスとトリガを保存しない場合は true、保存する場合は false を設定します。値を指定しない場合、デフォルトは false です。
runTests
実行する単体テストを含むクラスの名前。

このパラメータは、Salesforce 本番組織にリリースされるときには無視されます。組織の名前空間内のすべての単体テストが実行されます。

メモ

runAllTests
このプロパティは Boolean 値を持ち、組織内のすべてのテストを実行する場合は true、実行しない場合は false を設定します。runAllTeststrue を指定する場合、runTests の値を指定する必要はありません。

このパラメータは、Salesforce 本番組織にリリースされるときには無視されます。組織の名前空間内のすべての単体テストが実行されます。

メモ