Sandboxを活用しよう
Salesforceには、Sandboxという開発&テスト環境があります。
本番環境をまるっとコピー(正確にはデータまでまるっとコピーするのはFull Sandboxだけです)した環境なので、本番環境と同じ状況でテストや開発を行うことができます。
以下のような用途で使うと便利です。
・データに影響を与えるプロセスビルダー、フローなどを試すとき
・AppExchangeを試しに使ってみたいとき
・Apexクラス、Visualforceページ、Lightning Web Componentsでゴリゴリ開発したいとき
今回は、Sandboxの使い方をご紹介します。
Sandbox環境を作る
本番環境でSandbox環境を作成します。
設定のクイック検索に「Sandbox」と入力してSandbox画面を開きます。
「新規Sandbox」ボタンをクリックします。
名前にSandbox名を入力します。
短く、分かりやすい名前を付けることをオススメします。
Sandboxライセンスは4種類ありますが、以下のように選択するといいです。
Developer
データ量があまり必要でなく、Developer Proが利用できない場合
Developer Pro
データ量があまり必要でない場合
Partical Copy
特定のオブジェクトのデータのみ必要で、データ容量が5GBで足りる場合
Full
システムテストなど、すべてのデータを使ったテストや検証を行う必要がある場合
作成するSandboxの「次へ」をクリックします。
Sandboxオプションは何も指定せずに、「作成」をクリックします。
Sandboxの作成は時間が掛かります。
Sandboxの一覧で状況が「完了」となるまでしばらく待ちます(一仕事できるくらい待ちます)
Sandbox環境へのログイン
作成したSandboxにログインするためには、https://test.salesforce.comからログインします。
※本番環境の「私のドメイン」で「https://login.salesforce.comからのログインを防止」をONにしている場合は、「https://<ドメイン名>--dev.my.salesforce.com」からのログインとなります。
ユーザ名に、「本番環境のユーザ名.Sandbox名」と入力します。
本番環境のユーザ名が、「xxxxx@yyyyyy.zzz」で、Sandbox名が「dev」なら「xxxxx@yyyyyy.zzz.dev」となります。
パスワードは本番環境と同じものを入力します。
Sandboxで作成したものを本番環境にアップロードする
Sandboxで作成したものは、ほぼ本番環境に移すことができます。
本番環境に移す場合は、変更セットという機能を使います。
変更セットを使って、Sandboxのものを本番環境に移す方法をご紹介します。
本番環境で受け入れの設定
本番環境の設定のクイック検索に「リリース設定」と入力します。
作成したSandboxが表示されていますので、編集をクリックします。
アップロード認証方向の「変更着信を許可」をチェックして保存します。
送信変更セットの作成
Sandbox環境で本番環境に移すための変更セットである「送信変更セット」を作成します。
設定のクイック検索に「送信変更セット」と入力して送信変更セットを開きます。
新規をクリックします。
送信変更セットの名前を入力して保存します。
送信変更セットを作成した日を「YYYYMMDD」の形式で入力すると決めておけば悩まなくていいです。
変更セットコンポーネントから本番環境に移すものを追加していきます。
変更セットコンポートの追加をクリックします。
コンポーネントの種類を選択、コンポーネントをチェック、変更セットに追加という一連の手順で、本番環境に移したいコンポーネントを追加していきます。
例えば、pdCameraというApexクラスを追加する場合は、コンポーネントの種類をApexクラスに、pdCameraにチェックを入れて、変更セットに追加をクリックします。
※送信変更セットにApexクラス、Apexトリガを含む場合は、ユニットテストを行うApexクラスが必要です。
さらに以下の条件をクリアする必要があります。
・Apexクラスのユニットテストが成功すること、かつ、テストカバー率が75%以上であること
・Apexトリガのユニットテストは成功すること
送信変更セットを本番環境にアップロードする
作成した送信変更セットを本番環境にリリースするためにアップロードします。
アップロードする前に1つ気を付けることがあります。
送信変更セットはアップロードすると再利用ができません。
例えば、本番環境でリリースでエラーになった場合、送信変更セットを初めから作り直す必要があります。
この手間をなくすために、アップロードしない送信変更セットを1つ残しておくと便利です。
手順としては、作成した送信変更セットをコピーして、コピーした送信変更セットをアップロードするようにします。
コピーボタンで送信変更セットをコピーします。
送信変更セット名は、元の送信変更セット名-01と言ったように後ろに連番を振っておきます。
いよいよ、送信変更セットを本番環境にアップロードします。アップロードボタンをクリックします。
本番環境を選択してアップロードします。
送信変更セットのアップロードが完了するとメールで通知が届きます。
本番環境で変更セットをリリースする
本番環境で変更セットをリリースするには、設定のクイック検索で「受信変更セット」と入力し、受信変更セットをクリックします。
アップロードした変更セットが、「リリース待ちの変更セット」にあるかを確認します。
なければしばらく待ちます。
検証とリリースというのがあります。
検証は実際のリリースは行われず、リリースしたときにエラーがないかをチェックします。
検証した変更セットは、24時間以内であれば、検証なしにリリースできます(これをクイックリリースといいます)
リリースは検証とリリースを連続して行います。
検証でエラーが発生するとリリースが行われません。
オススメは、まず検証を行い、リリースに問題がないことを確認した上でリリースする方法です。
変更セットを検証する
検証をクリックします。
テストオプションはデフォルトを選択し、検証をクリックします。
確認ダイアログではOKボタンをクリックします。
リリース状況をクリックして、検証の結果を確認します。
エラーになったら、エラーがなくなるように送信変更セットの内容を調整して再度アップロードします。
この時、残しておいた送信変更セットで調整し、コピーしてアップロードするようにします。
リリースする
運用が始まっている場合は、慎重にリリースする必要があります。
運用に影響しないようにリリース後、以下のことを行う必要があります。
・リリースしたものが正しく動作するかを確認する
・新しく追加したカスタムオブジェクト、カスタム項目のアクセス権を設定する
リリース後、このようなことを行うとしたら、リリースする時間はできるだけ短い方がいいです。
そういうわけで、検証したのちにリリースすることをオススメしました。
クイックリリースでリリースします。
クイックリリースダイアログではOKボタンをクリックします。
成功したリリースと表示されればリリース完了です。
いかがだったでしょうか?
Sandboxを活用すると、以下のメリットがあります。
・設定、開発するものをひとまとまりにできる
・事前にしっかりテストを行い、確実な状態で本番環境にリリースできる
少しクセがありますので、慣れないうちは時間に少し余裕を持ってリリースするようにしてください。
この記事が気に入ったらサポートをしてみませんか?