What is Black Box Testing?

ブラックボックステストは、システムの内部を知らずに実行されるテストの一種であり、アプリケーションの機能、セキュリティ、パフォーマンス、およびその他の側面を評価するために実行できます。 動的コード解析 は、自動化されたブラックボックスセキュリティテストの一例です。 ブラックボックスエバリュエーターは、テストケースを定義し、ユーザーと同じようにソフトウェアと対話して、ソフトウェアが何をすべきか、どのように行うべきかを検証します。

詳細についてはこちら

What is Black Box Testing?

ブラックボックステストの種類

ブラックボックステストは、テストを実行する方法論です。 これらのテストは、次のようないくつかの異なる目標を達成するように設計できます。

  • 機能テスト: 機能テストは、アプリケーションが想定どおりに動作することを検証することを目的としています。 たとえば、機能テストでは、アプリケーションの認証メカニズムをテストして、正当なユーザーが正常に認証でき、無効なログイン試行が拒否されるかどうかを確認できます。 機能テストの一般的なタイプには、サニティチェック、統合テスト、システムテストなどがあります。
  • 非機能テスト: 非機能テストでは、アプリケーションがコア機能をどの程度実行しているかを評価します。 テストの例としては、パフォーマンス、ユーザビリティ、スケーラビリティ、セキュリティのテストなどがあります。
  • リグレッションテスト: 回帰テストは、アプリケーションへの変更によって機能が損なわれないことを確認するように設計されています。 たとえば、回帰テストは、アプリケーションの脆弱性にパッチを適用した後に実行して、パッチによってアプリケーションが機能テストまたは非機能テストに失敗していないことを確認する必要があります。

ブラックボックステスト手法

アプリケーションに関する内部知識がないため、テストが必要なすべてのケースを確実にカバーするために構造が重要です。 ブラックボックス評価を実行するための一般的な手法には、次のようなものがあります。

  • 等価クラステスト: アプリケーションは、特定の種類の入力に対して同じ制御フローに従う場合があります。 たとえば、成人のみがアクセスできるはずのアプリケーションが、ユーザーが 18 歳未満を入力すると終了したり、サービスエリアが限定されたツールが、そのエリア外の国や郵便番号で終了したりすることがあります。 等価クラス検定では、テスト担当者は、同じ結果を生成するこれらのクラスを識別し、そのクラス内の 1 つの値のみをテストします。
  • 境界値の評価: 境界値は、アプリケーションが 1 つの制御フローから別の制御フローに変化する入力です。 たとえば、17 歳と 18 歳は、17 歳はアプリケーションによって拒否される可能性があり、18 歳は受け入れられるため、成人期の境界値です。 境界値の評価では、これらの入力をテストして、システムがこれらのエッジケースを適切に処理していることを確認します。
  • デシジョンテーブルテスト: アプリケーションは、入力の組み合わせに基づいて決定を下すように設計されている場合があります。 たとえば、18 歳以上で特定の地域に住んでいるユーザーは、アプリケーションにアクセスできる場合があります。 デシジョンテーブルテストでは、入力の各組み合わせとその予想される結果を列挙し、各組み合わせを検証するためのテストケースを開発します。
  • 状態遷移の評価: アプリケーションは、認証試行に一定回数失敗した後にユーザーのアカウントをロックするなど、特定の条件下で状態を変更するように設計されている場合があります。 状態遷移の評価には、これらの状況を特定し、それらを検証するためのテストケースを開発することが含まれます。
  • エラーチェック: この形式の評価では、開発者がアプリケーションの作成時に犯した可能性のある一般的なエラーをテストします。 これは、多くの場合、入力のサニタイズと、入力に関する仮定が確実に適用されるようにすることを中心に展開されます。 たとえば、テスト担当者は、開発者が数値フィールドへの 0 の入力を適切に処理したかどうか、または名前の文字セットを名前に表示できる文字と記号に制限したかどうかを確認できます。

ブラックボックスとホワイトボックスのテスト

ブラックボックステストは、テスターがアプリケーションに関する内部知識を持っていないという事実にちなんで名付けられましたが(つまり、 これは「ブラックボックス」です)、ホワイトボックス評価は逆のアプローチを取ります。 ブラックボックステストとホワイトボックステストの主な違いには、次のようなものがあります。

  • ブラックボックステスト: テスト担当者は、アプリケーションと対話し、アプリケーションが機能要件と非機能要件および仕様を満たしていることの検証を試みます。 内部知識が不足しているため、これらのテストに時間がかかり、未アクセスのコードパスの脆弱性が検出されない可能性があります。 ただし、言語やプラットフォームに依存しないという利点があります。
  • ホワイトボックステスト: ブラックボックステストとは対照的に、ホワイトボックス評価は、ソースコードへのアクセスを含むアプリケーションの内部を完全に理解した上で実行されます。 ホワイトボックステストは、すべてのコードを評価できるため、ブラックボックステストよりも優れたテストカバレッジを提供します。 ただし、コードが開発された言語に関する専門知識が必要です。

ブラックボックステストとホワイトボックステストは、テストの実行方法における両極端を表しています。 グレーボックステストは、その中間に該当します。 グレーボックス評価では、テスト担当者はシステムの内部について部分的に知識を持っているため、評価の指針となります。  ランタイムアプリケーションの自己保護 (RASP)は、グレーボックステストのカテゴリに分類されるセキュリティツールです。

チェック・ポイントによるブラック・ボックス・セキュリティ・テスト

チェック・ポイントのプロフェッショナル・サービスは、さまざまなサイバーセキュリティ・レジリエンス/ペネトレーション・テスト・サービスを提供しています。 これには、ブラックボックス、グレーボックス、ホワイトボックスのセキュリティ評価が含まれます。

もっと詳しく知る チェック・ポイントのプロフェッショナル・テスト・サービス.あなたも大歓迎です お問い合わせ 組織内のセキュリティ問題の特定と修正にどのように役立つかをご覧ください。

×
  フィードバック
このWebサイトは、機能性と分析およびマーケティングの目的でCookieを使用しています。Webサイトを引き続きご利用いただくことで、Cookieの使用に同意したことになります。詳細については、Cookieに関する通知をお読みください。
OK