Salesforce テストのチュートリアル
Salesforceとは何ですか?
Salesforce は世界初のクラウドベースの CRM システムです。 1999 年 XNUMX 月にマーク ベニオフとパーカー ハリスによって設立されました。この CRM プラットフォームを開発する目的は、ユーザーが手頃な価格で簡単に販売、サービス、マーケティング、分析、顧客とのつながりを支援できるようにすることです。
SFDC (Sales Force Dot Com) には、見込み客や顧客との関係を管理するのに役立つ標準機能が多数あります。また、従業員やビジネス パートナーと連携して協力し、データをクラウドに安全に保存することもできます。
Salesforce CRM は、APEX と呼ばれるプラットフォーム開発言語に基づいて構築されています。Salesforce テストを使用すると、構成とコードが機能していることを確認できます。この CRM により、顧客の忠誠心、維持率、満足度を向上させ、永続的な関係を構築することを目指しています。
Salesforce テストとは何ですか?
Salesforceの優れた点は、多くの標準機能を企業のニーズに合わせてカスタマイズできることです。Salesforceテストは、標準のSFDCで実行された設定とカスタマイズの検証です。
課題は、テスターが組み込みの Salesforce 機能をテストするのではなく、カスタマイズされたコードを確実にチェックするようにすることです。
SalesForce CRM は、と呼ばれるプラットフォーム開発言語に基づいて構築されています。 頂点。 また、開発者がコードを検証するための多くの組み込み単体テスト ケースも提供します。
Salesforce テストを行う理由
Salesforce テストが必要だと私が考える主な理由を説明します。
- Salesforce のテストにより、設定とコードが機能することを確認できます。
- これは、完成したシステムがクライアントのビジネス プロセスをサポートできるかどうかを検証するのに役立ちます。
- このタイプのテストは、システムの初期ビルドが合意された要件を満たしていることを確認するのに役立ちます。
- 問題を早期に発見し、修正が容易になります。
- 機能フローは、テスト ケースのステータスに基づいてレポートします。これにより、チームは機能フローを作成してアプリケーションの機能を決定できるようになります。
- プロセス ビルダー機能は、システムの動作状態と動作を確認するのに役立ちます。
- ワークフローを使用すると、時間ベースのイベントの機能を確認できます。
Salesforce の用語
- ビジュアルフォース: 開発者が HTML に似たタグベースのマークアップ言語を使用してカスタム ユーザー インターフェイスを構築できるようにするフレームワーク。
- AppExchange: ユーザーが Salesforce 環境用のカスタム アプリケーションや拡張機能を見つけてインストールできる Salesforce のオンライン マーケットプレイス。
- 頂点: Salesforce プラットフォーム上でフローおよびトランザクション制御ステートメントを実行するために使用される、厳密に型指定されたオブジェクト指向プログラミング言語。
Salesforce テストの種類
手動テスト
手動ソフトウェア テスト プロセスには、従来の方法を使用した Salesforce.com アプリケーションのテストが含まれます。 QA チームは手動テストを使用して、機能テスト、ハッピー パス テスト、統合テスト、回帰テスト、およびシステム テストを実行できます。
自動テスト
自動テストには、Salesforce.com または Force.com アプリケーションをテストするコンピュータ プログラムが含まれます。 などの自動テストツール Selenium、Assure Click、QTPなどが使用されます。
Salesforce でのテストのレベル
Salesforce テスト チュートリアルでは、Salesforce に通常適用される次のレベルのテストについて説明します。
単体テスト
- 単体テストのプロセスは、Apex 開発者によって実行されます。 これには、コード内にカバレッジを自動的にテストする句を記述することが含まれます。
- これは、コードがその環境で正常に実行されるように、影響を受けるデータ レコードの数を評価するのに役立ちます。
- Apex コードを本番環境に導入するには、コード カバレッジ率が 78% 以上である必要があります。
システムテスト:
- これは、Salesforce コンサルタントの専門家チームによって実行されます。
- テスト システムの技術プロセスが最初から最後まで含まれます。
- 特定の出力に基づいたテスト スクリプトが含まれます。
- これにより、ワークフロー、検証、割り当てなどの自動化されたシステム ルールに関する問題のトラブルシューティングが可能になります。
UAT テスト:
- アプリケーションを使用するユーザーによって行われます
- ビジネスプロセスをサポートするシステムの能力をテストできる
- ビジネスで起こっていることに基づいたテストスクリプトに従ったUATテスト
- 望ましい出力は、システムが目的に適合していることをクライアントが確認することである必要があります。
生産テスト:
- 本番環境でのシステムテストの繰り返しです
- Salesforce の製品テストでは、構成とコードがサンドボックスから本番環境に正しく展開されているかどうかをテストできます。
- 最終プロジェクトの開始までに時間が残っている場合、クライアントは展開後に UAT スクリプトを再度実行する必要があります。
回帰試験:
- の主な目的 回帰試験 コードと構成のリリースがシステムの既存のユーザー プロセスに影響を与えるかどうかを判断することです。
- 機能強化または修正が本番環境に展開されたら、実施されます。
- ユーザーは、現在のプロセスに影響を与える可能性のある変更のリストを提供します。
Salesforceのテストプロセス
Salesforce のテスト プロセスは、通常の Web ベースのアプリケーションと同じです。 テスターは、テスト プロセス中に構築されるカスタマイズ可能な機能について明確な視点を持っている必要があります。 これにより、Salesforce の組み込み機能ではなく、カスタマイズされたコードに集中できるようになります。
開発者とテスト担当者は、それぞれの目的に応じて Sandbox 環境 (テスト環境) を使用する必要があります。Sandbox 環境でテストされたコードは、Sandbox 環境から本番環境にデプロイされます。QA テスターは、Salesforce で使用される用語に関する基本的な知識と理解を持っていることが前提となります。
Salesforce テストの課題
Salesforce のテストは簡単なプロセスではありません。 このプロセス中にテスターが直面した課題は数多くあります。 そのうちのいくつかは次のとおりです。
- Visualforce、Salesforce、Service Cloud Console などの高度な機能をテストするのは困難です。
- Lightning UI のクラシック テストをすべて再作成する必要があります。
- 標準機能の一部は、使用されていないものでも削除できません。
- テスト環境に切り替えると、GUI テストが機能しません。
- 自動テストは、すべてのテスト環境で動作できる必要があります。
- 一部のフィールド ID が組織間で異なるため、Salesforce 画面のフィールドロケーターを作成するときに問題が発生します。
Salesforce テストのベストプラクティス
- 実際のユーザー プロファイルとしてテストを実行します。
- レポートの機能を検証するには、テスト データを準備する必要があります。
- テスト方法には、機能テスト、UI テスト、回帰テスト、システム統合テストが含まれている必要があります。
- ウェブページのすべての要素が同時に読み込まれるとは限らないため、ビジュアル フォース ページの動的な性質には特別な注意を払う必要があります。
- 自動化テストは、次のようなツールを使用して実行する必要があります。 Selenium HP 統合機能テスト。
- Salesforce のテスターは、どのフローにポジティブなフローとネガティブなフローが含まれるかを考慮する必要があります。
- ユーザー ロールは、ワークフローを使用して構築およびテストする必要があります。
Salesforce テスターの役割と責任
Salesforce テスターの重要な役割と責任は次のとおりです。
- すべての主要な機能が要件どおりに機能していることを確認するために、煙テストを実施できる必要があります。
- ポジティブなテスト シナリオとネガティブなテスト シナリオの両方を作成します。
- 同値分割や境界値分析が可能。
- テスターは、アプリケーションを操作してその機能を理解し、機能マップを作成することも必要です。
- テスターは開発チームとの簡単なコミュニケーション チャネルを持っている必要があります。
- Salesforce アプリケーション用に構築できるカスタマイズ可能な機能を理解する必要があります。
- テスターは、データの一貫性を確保するために、ロールベースのテスト ケースを実行する必要があります。
- Salesforce がサードパーティアプリケーションと統合されている場合に備えて、互換性テストも実行する必要があります。
- Salesforce テスターは、次のような負荷テスト ツールに精通している必要があります。 JMeter Salesforce で一貫性のない結果をもたらす可能性のある複雑なフローを検証します。
- アペックスの知識。
SalesForce テスト自動化ツール
ほとんどのテスト Web ページは動的であるため、SalesForce で自動機能テストを実行することは困難です。 したがって、テスターは、現在および将来にわたって役立つ堅牢な自動化フレームワークを構築する必要があります。
以下に、私が推奨する広く使用されている Salesforce テスト ツールをリストします。
1) Tricentis Salesforce のテスト自動化
特に感謝しているのは、 Tricentis Salesforce のテスト自動化 Salesforce 環境向けの回復力のある UI テストの開発を加速します。スマート ロケーターは AI を活用して自己修復し、自動的に改善するため、メンテナンスを最小限に抑え、テストの安定性を確保します。
機能と特徴:
- エンドツーエンドのシナリオ検証: お客様は、Web アプリケーションから Salesforce に至るまでの完全なエンドツーエンドのシナリオを検証できます。
- アジャイルチームのスケーラビリティ: さまざまなスキルセットを持つアジャイル チームは、テストとチームの成長を制御および管理する機能を使用して、テスト操作を効率的に拡張します。
- 検証のための Apex コードの実行: テストステップで Apex コードを実行して、クエリ結果を検証します。
- API テストの統合: API テストを統合します。
Salesforce テストツールを使用する理由
- これにより、時間の 75% とテスト自動化コストの 25% を節約できます。
- より優れた Apex テスト実行、詳細なテスト カバレッジ、クラス カバレッジ レポートを提供します。
- 次のような業界をリードする自動化ツールを活用できます。 Selenium や JMeter.
- さまざまな環境や複数のブラウザーで実行するテスト シナリオを自動生成します。
- 記録されたテスト ケースをシームレスに記録および再生します。
- これは、あらゆる種類の展開前および展開後のタスクを自動化するのに役立ちます。
- Salesforce のテスト プロセスでは、テスト スクリプトからデータが分離され、複数のデータセットを使用して機能を強化できます。
Salesforce テスト シナリオのサンプル
- テストケース01: リード/クライアントの連絡先情報を取得できます。
- テストケース02: 連絡先はアクティブ/非アクティブとしてマークできます。
- テストケース03: どの企業も顧客または見込み客としてマークできます。
- テストケース04: Web フォームを利用して見込み客を獲得できます。
- テストケース05: 見積書の価格をゼロにすることはできません。
- テストケース06: 取引が完了したら、メールを送信する必要があります。返送されたメールがある場合は、処理する必要があります。
- テストケース07: サードパーティ ソフトウェアとの統合は適切に機能するはずです。
- テストケース08: Billing サービスは期待どおりに動作するはずです。
- テストケース09: 連絡先、商談、リード管理においてレコードの重複はありません。
- テストケース10: モバイル ワークフローは期待どおりに機能します。
- テストケース11: 権限のないユーザーはファイルにアクセスできません。
Salesforce のテスト: クライアントの課題
クライアントは、Salesforce のテストを適切に実施する方法がわからないため、常に緊張しています。 その結果、彼らは現実とは大きく異なる神話を持っています。
ここでは、それらのいくつかは以下のとおりです。
クライアントの問題 | 解決策 |
---|---|
Salesforceシステムの使い方がわからない。 | クライアントは、システムの機能ではなく、プロセスをテストする必要があります。 |
すべてのデータがシステム内に存在しないとテストできません。 | テストに必要なのは、いくつかのサンプル レコードだけです。 |
日々の仕事をテストしたり管理したりする暇はありません。 | 設計および構築の段階では、PM と定期的に連絡を取り合い、定期的にチェックインを行う必要があります。 |
まとめ:
- Salesforce は世界初のクラウドベースの CRM システムです。
- Salesforce テストでは、標準の SFDC で実行された構成とカスタマイズを検証します。
- Salesforce のテストは、完成したシステムがクライアントのビジネス プロセスをサポートできるかどうかを検証するのに役立ちます。
- SalesForce テストの最大の課題は、組み込みの SFDC 機能ではなくカスタマイズをテストしていることを確認することです。
- Salesforce テストの重要なレベルは、単体テスト、システム テスト、UAT テスト、本番テスト、回帰テストです。
- Salesforce テストの最大の課題は、Lightning UI 用にすべてのクラシック テストを再作成する必要があることです。
- Salesforce テスターは、実際のユーザー プロファイルとしてテストを実行する必要があります。
- Salesforce はスモーク テストを実施して、すべての主要な機能が要件どおりに機能していることを確認できる必要があります。
- Selenium Webドライバー、HP Unified Functional Testing (UFT)、および Cucumber これらは、Salesforce の重要なテスト ツールの一部です。