ソフトウェア テストに関する注意事項 (3): ブラック ボックス テスト

1 ブラックボックステストの概要

ブラックボックステストは、機能テストとも呼ばれ、各機能が正常に使用できるかどうかをテストします。テストでは、プログラムは開くことができないブラックボックスと見なされ、プログラムの内部構造や特性を考慮せずにプログラム インターフェイスがテストされ、プログラムの機能が要求仕様に従って正常に使用されているかどうかのみがチェックされます。 . プログラムが入力データを適切に受け取り、正しい出力情報を生成できるかどうか。

ブラック ボックス テストは、ユーザーの視点から見た入力データと出力データの関係からトリガーされ、次の種類のエラーを見つけようとします。

  • 不適切または欠落している機能
  • インターフェースエラー
  • データベース アクセス エラー
  • パフォーマンスエラー
  • 初期化および終了エラー

ユースケースの設計方法には、次のものがあります。

  • 同等クラス区分
  • 境界値分析
  • 決定表
  • 因果図
  • シーンメソッド

2 同値類区分

2.1 等価クラス

等価クラスは入力ドメインのサブセットであり、等価クラスを表す値がそのクラスの他の値と等しいことをテストするテストは、プログラム エラーを発見するために等価です。したがって、すべての入力データを合理的にいくつかの同等クラスに分割し、各同等クラスの 1 つのデータをテストの入力条件として使用し、少量の代表的なテスト データを使用してより良い結果を得ることができます。

等価クラス区分は、次のように分類できます。

  • 有効な等価クラス: プログラムの仕様にとって合理的で意味のある入力データのセットであり、有効な等価クラスを使用して、プログラムが仕様で指定された機能と意味を実装しているかどうかを確認できます。
  • 無効な同値クラス: 有効な同値クラスとは反対に、プログラムの仕様上、無意味で不合理なデータの集まりを指します。

2.2 分割の原則

  • 入力値の範囲を指定すると、1 つの有効な同値クラスと 2 つの無効な同値クラスを定義できます
  • 入力規則が規定されている場合、有効な同値類 (規則に準拠している) といくつかの無効な同値類 (さまざまな角度から原則に違反している) に分けることができます。
  • 入力データの編成が指定され、プログラムが異なる入力値を異なる方法で処理する場合、許可された各入力値には、1 つの有効な等価クラスと 1 つの無効な等価クラスがあります。
  • 入力データが整数であると規定されている場合、正の整数、ゼロ、および負の整数の 3 つの有効な同値クラスに分けることができます。
  • テーブルを扱う場合、有効なクラスは空のテーブル、1 つのアイテムを持つテーブル、複数のアイテムを持つテーブルなどです。

3 境界値解析

3.1 境界値解析の設計原則

境界値分析は、同値類分割を補完するものとして、同値類の境界値をテストケースとして選択します。

境界値分析に基づくと、次の原則があります。

  • 入力条件が値の範囲を指定している場合、範囲の境界にちょうど達する値と、範囲の境界をちょうど超える値をテスト入力データとして選択します
  • 入力条件に値の数を指定した場合は、最大数、最小数、最小数より1つ少ない数、最大数より1つ多い数をテストデータとする
  • 仕様で入力ドメインまたは出力ドメインの順序付けられたコレクションが指定されている場合、コレクションの最初と最後の要素をテスト ケースとして選択する必要があります。
  • プログラムで内部データ構造が使用されている場合、内部データ構造の境界上の値をテストケースとして選択する必要があります

3.2 境界分析の 2 つの方法

一般的に次のものが含まれます。

  • 一般的な境界値分析: 一般にMinMin+NormalMax-Max
  • ロバストな境界値分析: 一般的な境界値分析に加えてMin-Max+

4 意思決定表

デシジョンテーブルとも呼ばれるデシジョンテーブルは、さまざまな論理条件下でさまざまな操作を分析するための手法です。デシジョン テーブルは、次の 4 つの部分で構成されます。

  • 条件スタブ: 問題のすべての条件をリストします。条件の順序は関係ありません
  • アクションパイル:問題で指定されたすべての可能なアクションをリストし、並べる順序に制限はありません
  • 条件項目:条件パイルの値の真値と偽値を考えられるすべての場合に列挙
  • アクション項目: 条件項目のさまざまな値が有機的に関連している場合に取るべきアクションをリストします

一方、デシジョンテーブルのルールは、条件の任意の組み合わせの特定の値と、実行される対応するアクションを参照します. デシジョンテーブルの条件項目とアクション項目を通る列はルールです.多くの条件が決定表にリストされていますか? 値は、条件項目の列がある数のルールに対応しています。

たとえば、デシジョン テーブルを使用して作成されたプリンターのテスト ケースは次のとおりです。

5 因果図

5.1 定義

因果関係図は、グラフィカルな手法を使用して入力のさまざまな組み合わせを分析します。これは、さまざまな入力条件の組み合わせを記述し、それに応じて複数のアクションを生成するのに適しています。因果図の利点は次のとおりです。

  • 複数入力の相互結合・相互拘束関係を考える
  • テスト ケースの選択をガイドし、要件仕様の説明の問題点を指摘する
  • テスターが特定の手順に従ってテスト ケースを効率的に開発するのに役立ちます。
  • 因果図法とは、自然言語仕様を形式言語仕様に厳密に変換する手法であり、仕様の不完全性や曖昧さを指摘することができます。

5.2 基本図記号

理由結果グラフ:

 ciと はどちらeiも 0 または 1 の値を取ることができ、0 は状態が表示されないことを意味し、1 は状態が表示されることを意味します。

制約グラフ:

6シーン方式

同じイベントの異なるトリガーシーケンスと処理結果がイベントフローを形成し、各イベントフローがトリガーされたときのシーンがシーンを形成します。

シナリオ法には、一般的に基本フローと代替フロー(代替フローとも呼ばれる)があり、プロセスから出発して、通過する経路を記述することでプロセスが決定され、すべての基本フローと代替フローをトラバースすることでシーン全体が形成されます。シーン メソッドの基本的な設計手順は次のとおりです。

  • 指示に従って、プログラムの基本的な流れと、それぞれの代替の流れを記述します。
  • 基本的なフローとさまざまな代替フローに基づいて、さまざまなシナリオを生成します
  • 各シナリオに対応するテスト ケースを生成する
  • 生成されたすべてのテスト ケースを再確認し、冗長なテスト ケースを削除し、テスト ケースが決定された後に各テスト ケースのテスト データ値を決定します。

回路図は以下の通りです:

 

おすすめ

転載: blog.csdn.net/NHB456789/article/details/130405442