「UT.Browser」は、VB.net、VB6、VBAソースから単体テスト項目表を一括で作成

「UT.Browser」は、VB.net、VB6、VBAソースのコメントから単体テスト項目表を一括で作成します。

ソースファイルを読込、条件文、ループ文、例外処理を解読し、コメントからテスト項目を抽出します。
抽出されたテスト項目は、ソースのどのコメントから作成されたか確認することができます。
テスト項目は、見やすいレイアウトでエクセル出力ことができます。

手順は簡単3ステップ   1.ソースファイルの選択 2.テスト項目出力 3.エクセル出力
※VBAの場合、ソースファイル(.xls、.xlsm、.mdb、.accdb)指定後にモジュールを選択

また、「UT.Browser」は、コメントの入力不備をチェックすることができます。       
ソースレビュー前に、コメントの入力チェックで使用して頂くことにより、レビューの質をあげることができます。
丁寧にコメントが入力されているソースは、ソースの理解及び、後任者への大幅な負担軽減となります。

  • 単体試験項目作成ツール「UT.Browser」画面イメージ
  • 単体試験項目作成ツール「UT.Browser」エクセル出力イメージ



「UT.Browser」の単体テスト項目を出力する仕組み

  • 「UT.Browser」ではソースのコメントから試験項目、試験条件、確認項目の3項目をテスト項目として作成しています。

    • ・試験項目は、何を行なう為の処理であるのかを説明する項目
    • ・確認条件項目は、試験項目についてのIF文などの条件や、LOOPなどの境界等の条件
    • ・確認項目については、確認条件が満たした場合や処理の内容

    ソースを元に「UT.Browser」で作成するテスト項目をみていきます。

通常処理の場合の出力例

  • 通常処理の場合は、ソース行、またはソースの前行をコメントを取得します。取得した内容は試験項目となります。 確認項目は定型で「処理が正常に完了すること」となります。 取得対象コメントがない場合、除外コメント指定の場合、試験項目を作成しません。

    単体試験項目作成の通常処理サンプル

IF文、SELECT CASE文等の条件分岐の場合(ネストなし)

  • IF文は、IF句の前行に処理内容をコメントで記述します。このコメントが試験項目となります。 THEN句の後ろに処理の条件をコメントで記述します。このコメントが確認条件項目となります。 確認項目は、「IF文に入り処理を継続する」と定型文になります。 以降のIF文内の処理は、試験項目、確認条件を引継ぎ、確認項目に処理の内容が出力されます。

    Else if文、Else文の場合は、IF文の試験項目を引継ぎ、Else if文のthenの後ろのコメント、Else文の 後ろのコメントを確認条件として取得します。確認項目は、「Else if文に入り処理を継続すること」、 「Else文に入り処理を継続すること」と定型文になります。 以降のElse if文、Else文内の処理は、試験項目、確認条件を引継ぎ、確認項目に処理の内容が出力されます。

    単体試験項目作成のIF文サンプル

  • Select Case文はSelect文の前行に処理内容をコメントで記述します。このコメントは試験項目となります。 以降はCase句の後に条件をコメントで記述します。このコメントが確認条件となります。 確認項目は、「Case文に入り処理を継続すること」になります。 以降の処理については、試験項目、確認条件を引継ぎ、確認項目に処理のコメントを出力します。

    単体試験項目作成のSelectCase文サンプル

ループ文(WHILE,FOR,LOOP,DO)の場合の出力例

  • FOR、WHILE、DO句の前行にループ処理の内容をコメントで記述します。このコメントが試験項目となります。 また、FOR、WHILE、DO句の行にループの境界条件を記述します。このコメントは確認項目になります。 確認条件は各ループの境界条件が定型文で取得します。 ループ内の処理については、試験項目、確認条件を引継ぎ、取得したコメントを確認項目で出力します。

    単体試験項目作成のLOOP文サンプル

例外処理(TRY~CATCH~FINARY)の場合

  • 例外処理は、試験項目が「例外処理」になります。CATCHの後ろにコメントを記述します。このコメントは確認条件と なります。確認項目は「Catch文に入り処理を継続すること」と定型文になります。 例外処理内での処理については、試験項目、確認条件を引継ぎ、確認項目に処理のコメントを出力します。 Finaryについては、確認条件に「共通処理」と定型文を出力します。

    例外処理内でのIF文等ネストする場合、確認条件に処理のための条件が追記されます。
    (例外処理の出力例 赤枠)

    単体試験項目作成の例外処理サンプル

IF文、ループ文の処理内でネストされた条件文、ループ文の出力について

  • 条件文やループ文内の処理で、条件文、ループ文がある場合、
    • 1.対象の条件文、ループ文を通常処理をして確認項目を作成
    • 2.対象の条件文、ループ文を条件文、ループ文処理をして試験項目、確認条件、確認項目を作成

    単体試験項目作成のネストサンプル

最終更新日:2015年12月20日