テストケースの定義 defining-your-test-cases
テストケースは、次に基づいている必要があります。
ユースケース
- これらは、アクター(特定のアクションを開始する役割)とシステムとのやり取りに関して必要になる機能を定義します。
- ユースケースは、顧客が定義する必要があります。
詳細な要求仕様
- すべての機能要件とパフォーマンス要件をテストする必要があります。
テストでは、次の事項を明確に定義する必要があります。
- 前提条件:具体的なシステム、設定、テスター向けのエクスペリエンスが含まれる場合があります。
- 実行手順(適切な詳細レベルで指定します)。
- 期待される結果。
- 合格または不合格の基準を明確にします。
テストケースの自動化は、繰り返し作業が不要になるので役立ちます。
手動テストと自動テスト manual-versus-automated-tests
ただし、テストケースの自動化は大きな投資なので、次の点を考慮する必要があります。
- セットアップと設定には、時間、労力、経験が必要です。
- ブラウザーをベースにしている場合、ブラウザーのアップデートがインストールされる際に問題が発生するリスクが高くなります。修正にはさらに時間が必要です。
- 大規模なプロジェクトでのみ実現可能です。
- 複数のリリースがテスト用または長期リリース計画用に生成されている場合に適しています。
特定の側面のテスト testing-specific-aspects
AEM のテストをする際に特に関連のあるいくつかの事項を次に説明します。
オーサー環境とパブリッシュ環境
環境で説明していますが、テストに関する AEM の決定要因をハイライトする価値があります。
AEM は次の 2 つのアプリケーションと考えてください。
-
作成者 環境
このインスタンスを使用すると、作成者はコンテンツを入力および公開できます。
これには、少数の予測可能なユーザーのセットが含まれ、そのユーザーに対する特定の機能とパフォーマンスが重要です。 -
公開 環境
このインスタンスは、訪問者がアクセスするための、公開済みのフォームの web サイトを表します。
この環境には通常、より多くのユーザーのセットが含まれ、トラフィック量が常に 100% 予測できるわけではありません。リクエストに応答する際は、パフォーマンスが引き続き重要です。キャッシュとロードバランシングも検討します。
同じソフトウェアでも、次のようになります。
- 異なる目的を果たす
- 機能とパフォーマンスに関して異なる要件を持つ
- 別の方法で設定される
- 別々に調整される
- それぞれに独自の受け入れテストがある
つまり、異なるテストケースを使用して、個別にテストする必要があります。
パーソナライズ機能
パーソナライゼーションをテストする場合、動作を証明するために、複数のユーザーアカウントを使用して個々のユースケースを繰り返す必要があります。
正しい動作についても、キャッシュを確認します。
Dispatcher
ほとんどのプロジェクトでは、キャッシュとロードバランシングに Dispatcher がインストールされます。
(キャッシュが発生するレベルおよび場所が様々なので)テストは複雑であり、ブラックボックスベースで行う必要があります。テストの主要な側面は次のとおりです。
-
正確さ
Web サイトへの訪問者がコンテンツの更新を確実に閲覧できるようにします。 -
連続性
1 台のサーバーがシャットダウンしても、web サイトが引き続き使用できるようにします。 -
クラスター
次を提供するために使用します。-
フェイルオーバー
1 台のサーバーに障害が発生すると、クラスター内の他のサーバーが処理を引き継ぎます。 -
パフォーマンス
ロードバランシングと完全なフェイルオーバーをおこなうと、クラスターのパフォーマンスが向上します。
顧客のプロジェクトで使用する場合、クラスターをテストし、顧客の設定で正常に動作することを確認する必要があります。
-
サードパーティのソフトウェアのテスト testing-third-party-software
AEM に接続されているサードパーティのソフトウェアは、詳細要件仕様で参照されます。
必要なテスト(指定範囲によって異なる)を調査し、明確なテストをおこなう必要があります。