ホワイト Box テスト – とは何か、手法、例、種類

ホワイト Box テスト

ホワイト Box テスト ソフトウェアの内部構造、設計、コーディングをテストして入出力フローを検証し、デザイン、使いやすさ、セキュリティを向上させるテスト手法です。 白で box テストでは、コードはテスターに​​見えるため、クリアとも呼ばれます。 box テスト、オープン box テスト、透明 box テスト、コードベースのテスト、および Glass box テスト。

これは、次の XNUMX つの部分のうちの XNUMX つです。 Box ソフトウェアテストへのテストアプローチ。 その相手であるブラックbox テストには、外部またはエンドユーザーの観点からのテストが含まれます。 一方、ホワイトは、 box ソフトウェア エンジニアリングにおけるテストは、アプリケーションの内部動作に基づいており、内部テストを中心に展開します。

「白」という言葉Box」が透けて見えるため使用されました。 box コンセプト。 クリア box またはホワイトBox 名前は、ソフトウェアの外殻を透視する能力 (または「box”)その内部の仕組みを調べます。のようにwise、 黒い box「で」ブラック Box テスト」は、ソフトウェアの内部動作を見ることができないため、エンドユーザーのエクスペリエンスのみをテストできることを象徴しています。

ホワイト Box ビデオのテスト

クリック (茶事の話はこちらをチェック) ビデオにアクセスできない場合

ホワイトでは何を確認しますか Box テスト中?

ホワイト box テストには、次のソフトウェア コードのテストが含まれます。wing:

  • 内部セキュリティホール
  • コーディングプロセスにおけるパスが壊れているか構造が不十分である
  • コードを通じた特定の入力の流れ
  • 期待される出力
  • 条件ループの機能
  • 各ステートメント、オブジェクト、関数を個別にテストする

テストは、ソフトウェア開発のシステム、統合、およびユニットのレベルで実行できます。 白の基本的な目標の XNUMX つbox テストとは、アプリケーションの動作フローを検証することです。 これには、一連の事前定義された入力を予期または望ましい出力に対してテストすることが含まれます。これにより、特定の入力が予期した出力にならない場合は、バグが発生したことになります。

ホワイトをどのように実行しますか Box テスト中?

ホワイトを簡単に説明するために、XNUMX つの基本的なステップに分けています。 box テスト中。 これは、テスターが白を使用してアプリケーションをテストするときに行うことです。 box テスト技術:

ステップ 1) ソースコードを理解する

テスターが最初に行うことは、アプリケーションのソース コードを学習して理解することです。 白いので box テストにはアプリケーションの内部動作のテストが含まれるため、テスターはテスト対象のアプリケーションで使用されるプログラミング言語について十分な知識を持っている必要があります。 また、テスト担当者は安全なコーディングの実践を強く意識する必要があります。 多くの場合、セキュリティはソフトウェアをテストする主な目的の XNUMX つです。 テスターはセキュリティ上の問題を発見し、アプリケーションに悪意のあるコードを挿入する可能性のあるハッカーや素朴なユーザーからの攻撃を防ぐことができる必要があります。wing嘘か知らないかwingそうです。

ステップ 2) テスト ケースを作成して実行する

白への基本的な第 XNUMX ステップ box テストには、アプリケーションのソース コードが適切なフローと構造であるかどうかをテストすることが含まれます。 XNUMX つの方法は、アプリケーションのソース コードをテストするためにさらにコードを作成することです。 テスターは、アプリケーション内の各プロセスまたは一連のプロセスに対して小さなテストを開発します。 この方法では、テスターがコードについての深い知識を持っている必要があり、多くの場合、開発者によって行われます。 他の方法としては、 手動テスト、試行錯誤によるテスト、およびテスト ツールの使用については、この記事で詳しく説明します。

ホワイトBox テスト

ホワイトBox テスト例

以下を検討してくださいwing コードの一部

Printme (int a, int b) {                       ------------  Printme is a function 
    int result = a+ b; 
    If (result> 0)
    	Print ("Positive", result)
    Else
    	Print ("Negative", result)
    }                                        -----------   End of the source code

ホワイトの目標Box ソフトウェアエンジニアリングにおけるテストは、コード内のすべての意思決定分岐、ループ、およびステートメントを検証することです。

上の白のステートメントを実行するには box テスト例、ホワイトBox テストケースは次のようになります

  • A = 1、B = 1
  • A = -1、B = -3

ホワイト Box テスト技術

少佐の白人 box テスト手法はコードカバレッジ分析です。 コードカバレッジ分析により、コード内のギャップが排除されます。 テストケース スイート。 これは、一連のテスト ケースによって実行されないプログラムの領域を識別します。 ギャップが特定されたら、テスト ケースを作成してコードの未テスト部分を検証することで、ソフトウェア製品の品質を向上させることができます。

実行できる自動ツールがあります コードカバレッジ分析。 以下にいくつかのカバレッジ分析手法を示します。 box テスターは以下を使用できます:

声明の対象範囲:- この手法では、コード内のすべての可能なステートメントを、テスト プロセス中に少なくとも XNUMX 回テストする必要があります。 ソフトウェア工学.

支店のカバー範囲 – この手法では、ソフトウェア アプリケーションの考えられるすべてのパス (if-else およびその他の条件ループ) をチェックします。

上記以外にも、条件カバレッジ、複数条件カバレッジ、パス カバレッジ、関数カバレッジなど、多数のカバレッジ タイプがあります。それぞれの手法には独自のメリットがあり、ソフトウェア コードのすべての部分をテスト (カバー) しようとします。 ステートメントとブランチ カバレッジを使用すると、通常は 80 ~ 90% のコード カバレッジが得られますが、これは十分な値です。

Following 重要です ホワイトBox テスト手法:

  • 声明の対象範囲
  • 決定事項の範囲
  • 支店のカバレッジ
  • 条件の適用範囲
  • 複数の条件をカバー
  • 有限状態マシンの適用範囲
  • パスのカバレッジ
  • 制御フローのテスト
  • データフローテスト

白の種類 Box テスト

ホワイト box テスト アプリケーション、コードのブロック、または特定のソフトウェア パッケージの使いやすさを評価するために使用されるいくつかのテスト タイプが含まれます。 以下にリストされています—

  • 単体テスト: 多くの場合、これはアプリケーションに対して実行される最初のタイプのテストです。 単体テスト 開発時にコードの各ユニットまたはブロックに対して実行されます。 単体テストは基本的にプログラマによって行われます。 ソフトウェア開発者は、数行のコード、単一関数、またはオブジェクトを開発し、継続する前にテストして動作することを確認します。単体テストは、ソフトウェア開発ライフサイクルの初期段階でバグの大部分を特定するのに役立ちます。 この段階で特定されたバグは、安価で簡単に修正できます。
  • メモリリークのテスト: メモリ リークは、アプリケーションの実行速度が低下する主な原因です。 ソフトウェア アプリケーションの実行が遅い場合には、メモリ リークの検出に経験のある QA スペシャリストが不可欠です。

上記とは別に、いくつかのテスト タイプが両方のブラック テストの一部です。 box と白 box テスト中。 それらは以下にリストされています

  • ホワイト Box 侵入テスト: このテストでは、テスター/開発者は、アプリケーションのソース コード、詳細なネットワーク情報、関連する IP アドレス、およびアプリケーションが実行されるすべてのサーバー情報に関する完全な情報を持っています。 目的は、さまざまな角度からコードを攻撃してセキュリティ上の脅威を明らかにすることです。
  • ホワイト Box 突然変異テスト: 突然変異テスト ソフトウェア ソリューションを拡張するために使用する最適なコーディング手法を見つけるためによく使用されます。

ホワイト Box テストツール

以下はトップホワイトのリストです box テストツール。

白の利点 Box テスト

  • 隠れたエラーを見つけてコードを最適化します。
  • ホワイト box テストケースは簡単に自動化できます。
  • 通常、すべてのコード パスがカバーされるため、テストはより徹底的になります。
  • テストは早い段階で開始できる SDLC GUI が利用できない場合でも。

白のデメリットBox テスト

  • ホワイト box テストはかなり難しいかもしれませんplex そして高価です。
  • 通常は白を実行する開発者 box テストケースはそれを嫌っています。 白 box 開発者によるテストは詳細に行われていないため、本番環境でのエラーが発生する可能性があります。
  • ホワイト box テストには、プログラミングと実装を詳しく理解した専門リソースが必要です。
  • 白い-box テストには時間がかかり、大規模なプログラミング アプリケーションを完全にテストするには時間がかかります。

まとめ

  • ホワイト box テストはかなり難しいかもしれませんplex。 コムplex関係する内容は、テスト対象のアプリケーションに大きく関係します。単一の単純な処理を実行する小さなアプリケーション opera白かもしれない box テストは数分で完了しますが、大規模なプログラミング アプリケーションは完全にテストするには数日、数週間、さらにはそれ以上かかります。
  • ホワイト box ソフトウェアにおけるテスト テストは、ソフトウェア アプリケーションの作成後、および変更のたびに開発されるため、ソフトウェア アプリケーションに対して実行する必要があります。