構成テストとは何ですか? テストケースの例
構成テスト
構成テスト ソフトウェア テスト手法では、機能要件を評価し、ソフトウェア アプリケーションが欠陥や欠点なく動作する最適な構成を見つけるために、ソフトウェアとハードウェアの複数の組み合わせでソフトウェア アプリケーションをテストします。
上で説明したように、構成テストは、ソフトウェアとハードウェアの複数の組み合わせを使用してテスト対象のアプリケーションをテストする必要があるソフトウェア テストです。
構成テストの例
デスクトップ アプリケーションの例でこれを理解してみましょう。
一般に、デスクトップ アプリケーションは 2 層または 3 層になります。ここでは、次を使用して開発された 3 層デスクトップ アプリケーションを考えます。 Asp.Net クライアント、ビジネス ロジック サーバー、データベース サーバーで構成され、各コンポーネントは以下のプラットフォームをサポートします。
- クライアントプラットフォーム – Windows XP、Windows7 OS、Windows 8 OSなど
- サーバープラットフォーム – Windows Server 2008 R2、Windows Server 2008 R2、 Windows サーバー 2012R2
- データベース - SQL Server 2008、 SQL サーバー 2008R2、SQL サーバー 2012 など
テスターは、クライアント、サーバー、およびデータベースの組み合わせを、上記のプラットフォームとデータベースのバージョンの組み合わせでテストして、アプリケーションが適切に機能し、障害が発生しないことを確認する必要があります。
構成テストはソフトウェアに限定されるものではなく、ハードウェアにも適用できるため、ハードウェア構成テストとも呼ばれ、テスト対象のアプリケーションをサポートするプリンター、スキャナー、Web カメラなどのさまざまなハードウェア デバイスをテストします。
構成テストの前提条件
どのプロジェクトでも、構成テストを開始する前に、いくつかの前提条件に従う必要があります。
- ソフトウェアとハードウェア構成をさまざまに組み合わせたマトリクスの作成
- すべての構成をテストするのは難しいため、構成に優先順位を付ける
- 優先順位に基づいてすべての構成をテストします。
構成テストの目的
構成テストの目的は次のとおりです。
- アプリケーションを検証して、構成要件を満たしているかどうかを判断する
- テスト中に効率的に発見されない欠陥を特定するのに役立つ、手動による障害の発生 (例: タイムゾーン、言語、日時形式などのシステムの地域設定の変更)
- テスト対象のアプリケーションの最適な構成を決定します。
- ロードバランサーなどのハードウェアリソースの追加や変更、メモリサイズの増減、各種プリンターモデルの接続などによるシステムパフォーマンスの分析。
- 優先順位に基づいたシステム効率の分析、最適なシステム構成を達成するために利用可能なリソースを使用してテストがどの程度効率的に実行されたか。
- 地理的に分散した環境でシステムを検証し、システムがどの程度効率的に実行されるかを検証します。 例: サーバーが別の場所にあり、クライアントが別の場所にある場合、システムはシステム設定に関係なく正常に動作するはずです。
- 構成の変更に関係なく、バグがどの程度簡単に再現できるかを検証します。
- 簡単に識別できるバージョンを適切に文書化し、維持することで、アプリケーション項目の追跡可能性を確保します。
- アプリケーション項目がどの程度管理しやすいかを検証する ソフトウェア開発ライフサイクル.
構成テストの方法
このセクションでは、構成テストのタイプに従う必要がある戦略について説明します。構成テストには以下の XNUMX つのタイプがあります。
- ソフトウェア構成のテスト
- ハードウェア構成のテスト
ソフトウェア構成のテスト
ソフトウェア構成テストは、複数の OS、異なるソフトウェア アップデートなどを使用してテスト対象のアプリケーションをテストします。ソフトウェア構成テストは、テストに使用されるさまざまなソフトウェアのインストールとアンインストールに時間がかかるため、非常に時間がかかります。
ソフトウェア構成をテストするためのアプローチの XNUMX つは、仮想マシン上でテストすることです。 仮想マシンはソフトウェア上にインストールされ、物理ハードウェアのように動作する環境であり、ユーザーは物理マシンと同じ感覚を持ちます。 仮想マシンはリアルタイム構成をシミュレートします。
複数の物理マシンにソフトウェアをインストールおよびアンインストールするのは時間のかかる作業ではなく、仮想マシンにアプリケーション/ソフトウェアをインストールしてテストを続ける方が常に良い方法です。 このプロセスは複数あることで実行できます。 仮想マシン、テスターの仕事を簡素化します
ソフトウェア構成テストは通常、次のときに開始できます。
- テスト対象の構成要件が指定されている
- テスト環境の準備が完了しました
- テストチームは構成テストの十分な訓練を受けています
- リリースされたビルドはユニットと統合テストに合格しました
分解能 テスト戦略 ソフトウェア構成テストの後に続くのは、複数のソフトウェア構成にわたって機能テスト スイートを実行し、テスト対象のアプリケーションが欠陥やエラーなく期待どおりに動作しているかどうかを確認することです。
もう XNUMX つの戦略は、テスト ケースを手動で失敗させて効率を検証することで、システムが正常に動作していることを確認することです。
例:
たとえば、すべての前提条件が満たされている環境でアプリケーションがホストされている場合、複数のブラウザ間での互換性をテストする必要がある銀行アプリケーションがあるとします。 統合テスト テストラボで。
ただし、同じアプリケーションがクライアントの場所にインストールされており、マシンに一部のソフトウェアのアップデートや、アプリケーションが直接的または間接的に依存しているバージョンが欠けている場合、アプリケーションが失敗する可能性があります。 このような状況を回避するには、構成要件の一部を削除して手動でテストを不合格にし、その後テストを続行することを常にお勧めします。
ハードウェア構成のテスト
ハードウェア構成テストは通常、さまざまなハードウェアが接続された物理マシンを見つけるラボで実行されます。
ビルドがリリースされるたびに、ハードウェアが接続されているすべての物理マシンにソフトウェアをインストールする必要があり、アプリケーションが正常に動作することを確認するために各マシンでテスト スイートを実行する必要があります。
上記のタスクを実行するには、各マシンにソフトウェアをインストールし、ハードウェアを接続して手動で実行するか、上記のプロセスとテスト スイートを実行するのを自動化するのに、かなりの労力が必要です。
また、ハードウェア構成テストを実行する際には、テストするハードウェアの種類を指定しますが、コンピューターのハードウェアと周辺機器は多数あるため、すべてを実行することは非常に不可能です。 したがって、ユーザーがどのハードウェアを主に使用しているかを分析し、優先順位に基づいてテストを行うことがテスターの義務となります。
サンプルテストケース
ハードウェアの互換性をテストするための銀行シナリオを検討してください。 紙幣計数機に接続されている銀行アプリケーションは、Rolex、Strob、Maxsell、StoK などのさまざまなモデルでテストする必要があります。
ノートカウンティングマシンをテストするサンプルテストケースをいくつか取り上げてみましょう
- 前提条件がインストールされていない場合のアプリケーションとロレックス モデルの接続の確認
- 前提条件がインストールされている場合のアプリケーションとロレックス モデルの接続を確認する
- システムが紙幣を正しく数えているかどうかを確認します
- システムが紙幣を正しく数えていないかどうかを確認します
- 改ざんされたメモを検証する
- 応答時間の確認
- 偽札が検出されたかどうかの検証など
上記のテスト ケースは XNUMX つのモデルに関するものですが、市場で入手可能なすべてのモデルをテスト ラボにセットアップして同じことをテストする必要がありますが、これは困難です。 したがって、ハードウェア構成のテストを専門の組織に委託することをお勧めします。
まとめ
ソフトウェア エンジニアリングでは、構成テストは他の種類のテストと同様に重要視される必要があります。 構成テストを実行しないと、最適なシステム パフォーマンスを分析することが難しく、また、ソフトウェアが実行されるはずの互換性の問題が発生する可能性があります。