ソフトウェアのテスト方法の分類

ソフトウェアテストの分類:

分割:ブラックボックステスト、グレーボックステスト、ホワイトボックステスト

ブラックボックステスト:機能テスト、データ駆動型テスト、または仕様に基づくテストとも呼ばれます。テストでは、プログラムの内部条件を理解する必要はありませんが、プログラムの入出力とシステムの機能のみを認識しています。テスト。

ホワイトボックステスト:構造テスト、ロジックドリブンテスト、またはプログラムの州に基づくテストとも呼ばれます。これは、プログラムの内部構造およびアルゴリズムよりも重要です。通常、関数やパフォーマンスインジケーターは含まれません。ホワイトボックステストは、ソースコードに基づく制御構造です。 、処理プロセスなど。例外処理、ステートメント結果、分岐、ループ構造など、プログラムの内部処理が正しいかどうかを確認します。ホワイトボックステストは、通常、ユニットまたはモジュールに基づいています。ホワイトボックステストの
主なテスト方法は次のとおり
です。1.ステートメントカバレッジ:プログラムのすべてのステートメントを少なくとも1回カバーする
2.判定カバレッジ:プログラムのすべての判定を少なくとも1回は真または偽にする
3.条件付きカバレッジ:判定のすべての条件をさまざまな可能な結果を​​得る
4.判定/条件カバレッジ:判定カバレッジと条件カバレッジの両方が同時に満たされます
5.条件付き組み合わせカバレッジ:各判定で条件のすべての可能な組み合わせが少なくとも1回現れるようにします。

グレーボックステスト:これ
は、同時にプログラムの外部パフォーマンスとプログラムの内部ロジック結果に基づいて、ユースケースを設計し、プログラムを実行し、プログラム実行情報と外部ユーザーの外部インターフェイスの結果を収集するテストテクノロジーです。このテストテクノロジーは、ブラックボックステストとホワイトの間です。ボックステスト間では、グレーボックステストは、アプリケーションとそれを使用できる環境の内部知識に基づく方法とツールで構成されます。ブラックボックステストで使用すると、テスト効率、エラー検出、エラーケース分析を強化できます。効率(インターフェイステストはグレーボックステストです)。

分割:静的テストと動的テスト

静的テスト:コードを実行せず、プログラムコード、インターフェイス、またはドキュメントで発生する可能性のあるエラーを静的にチェックします。
動的テスト:テスト済みコードを実行し、対応するテストデータを入力して、出力結果が期待される結果と一致しているかどうかを確認します。

ユニットテスト、統合テスト、システムテスト、受け入れテストに分かれています。

単体テスト:テスト対象
のソフトウェアの機能とモジュールのテストは、テストの最小単位です。

統合テスト:
主にソフトウェア構造の問題をテストします。テストはモジュールインターフェイス上に構築されるため、インターフェイステストはホワイトボックステストで補足されます。統合テストは、ソフトウェアを組み立てるためのシステムテスト技術です。設計要件に従って、ユニットテストに合格した各モジュール一緒に組み立て、包括的なテストを実施して、インターフェースに関連するさまざまなエラーを発見します。
統合テストを実行するには、次の方法に従う必要があり
ます。1.システム全体を構成するモジュール間の関係を確認します。
2.モジュール間の相互作用と通信の要件を確認し、モジュール間のインターフェースを確認します。
3.上記の情報を使用して、一連のテストケースを生成します。
4.インクリメンタルテストを使用して、モジュールを順番にシステムに追加し、新しくマージされたシステムをテストします。このプロセスは、すべてのモジュールがシステムに統合されて完全なシステムが形成されるまで、論理的/機能的なシーケンスで繰り返されます。
統合テストの原則:
統合テストは把握が容易ではなく、設計全体の設計をできるだけ早く開始
する必要があります1.すべてのパブリックインターフェイスをテストする必要があります。
2.主要モジュールは完全にテストする必要があります。
3.統合テストは特定のレベルで実施する必要があります。
4.統合テストの戦略選択では、品質、コスト、スケジュールの関係を考慮する必要があります。
5.統合テストはできるだけ早く開始し、全体的な設計に基づいている必要があります。
6.モジュールとインターフェースの分割では、テスターは開発者と十分にコミュニケーションを取る必要があります。
7.インターフェースが変更された場合、関連するインターフェースを再度テストする必要があります。
8.テストの実行結果は正確に記録する必要があります。

システムテスト:
統合テストに合格すると、ソフトウェアが完全なソフトウェアパッケージにアセンブルされます。この時点で、システムテストを実行する必要があります。システムテストでは、ブラックボックステストテクノロジーを完全に使用します。システムテストで使用されるデータは、可能な限り正確で代表的なものです。セックス。

受け入れテスト:
システムテストが完了すると、ソフトウェアは完全に組み立てられます。この時点で、ソフトウェアの最終確認テストを開始できます。確認テストは、主にソフトウェアが契約要件に従って機能するかどうか、つまりソフトウェア要件ルール仕様の要件を満たしているかどうかを確認します。 。
受け入れテストでは、ソフトウェアが契約で指定されたすべての機能とパフォーマンスを満たしているか、ドキュメントが完全で正確であるかどうか、ヒューマンマシンインターフェースおよびその他の側面(移植性、互換性、エラー回復機能、保守性など)が顧客の要件を満たしているかどうかに重点が置かれます。 。
受け入れテストは、α、βテストを使用できます。

  • アルファテスト:ソフトウェア開発会社の内部担当者が、さまざまなユーザーの行動をシミュレーションして、次のソフトウェア製品をテストすることを指します。アルファテストを受けたソフトウェア製品は、ベータバージョンと呼ばれます。
  • ベータテスト:ソフトウェア製品会社は、日常の作業でベータ版を使用するように一般的なユーザーを編成し、ユーザーに異常な状態を報告し、改善のための提案を提出するように要求します。その後、ソフトウェア開発会社はベータ版を修正して完成させます。(ソフトウェア会社は、ユーザーが無料でダウンロードできるようにソフトウェアのベータ版をインターネットに配置し、一定期間テストするか、一定期間無料で試用することを楽しみにしている見込み顧客グループに配布できます。

他のテストを分割する:回帰テスト、スモークテスト、ランダムテスト

回帰テスト:ソフトウェアの新しいバージョンをテストし、以前のバージョンを繰り返し実行するときに使用されるテストケース。

煙のテスト:公式にテストする必要がある新しくコンパイルされたソフトウェアごとに、ソフトウェアの基本的な機能が正常であることが確認されます。煙の管理者は通常、バージョンコンパイラまたは他のR&D担当者です。

ランダムテスト:テストでは、テストデータがランダムに生成され、サルテスト(サルテスト)とも呼ばれます。
ランダムテストのいくつかの欠点:
1.テストは多くの場合、あまり当てはまりません。
2.特定のカバー率に到達できない。
3.多くのテストは冗長です。
4.テストを再構築するには、同じランダムシードを使用する必要があります。
この種類のランダムテストは、多くの場合、あまり役に立ちません。「崩壊の防止」として、またはシステムが悪影響を受けたときにシステムが正常な状態を維持できるかどうかを確認するためによく使用されます。この方法を使用して、システムの堅牢性。大量のガベージデータやその他の手段の生成を防止します。
-「ソフトウェアパフォーマンステストとロードランナーのベストプラクティスに精通している」からの抜粋

おすすめ

転載: blog.51cto.com/14610663/2488369