i-Tool 拡張機能② テストケースの明確化、カバレージとトレース Copyright © 2014 アイ・システム株式会社 All Rights Reserved 拡張機能② テストケースの明確化、カバレージとトレース ◆ 事例概要 ●テスト実行ログの取得 ・被テストプログラムの条件判定文(if、then、else)に通過ログ取得機能を埋め込み、テスト実行時にログを取得します。 ・テストケースごとにログをDB化して蓄積、管理します。 ●通過パス消し込みシート(構造化フローチャート)へのマーキング ・「視覚的」、「直感的」な網羅性、トレースの確認が可能です ●カバレージ : i-Toolの消し込み ・テストケースの実行ログ(単体トレース)を重ね合わせて、メソッド毎のパスのカバレージを把握。 ・通過パス消し込みシート(テスト支援の為の構造化フローチャート)にカバレージ結果をマーキングし可視化。 ・テスト実施、未実施パス(条件網羅)が視覚化、容易に把握することが出来ます。 ●i-Toolのテスト実行パストレース ・結合トレースの把握が可能です。(メソッドを渡った通過ルートのトレース) ・関連メソッドを統合(手繰り寄せ)した通過パス消し込みシートにマーキングして可視化します。 ●処理パス(カバレージ検証パス)の厳密化。テストパス漏れの防止 ・他のツールにはない強力なソース正規化機能 Copyright © 2014 アイ・システム株式会社 All Rights Reserved : 複合判定条件の分解など。 1 拡張機能② テストケースの明確化、カバレージとトレース ◆ 単体トレースとカバレージ ✔ ✔ 単体トレース(テスト実行ケースごと)により、テスト1件に対する通過検証が可能 カバレージ:単体トレースを通過パス消込シートに蓄積 集約 通過パス消込結果シート (テスト件数が5件の場合の例) 「単体トレース」 トレース カバレージ 「サマリー版エビデンス」 (カバレージ結果) 通過パス消込シート ✔個別のテストの通過ルートの出力、確認が可能。 Copyright © 2014 アイ・システム株式会社 All Rights Reserved 2 拡張機能② テストケースの明確化、カバレージとトレース ◆ 通過パス消込シートによる可視化 ✔カバレッジ結果エリア 通過パス消込結果シートの出力内容(消し込み結果の成果物) カバレッジ結果をif,then,else, endifの条件文及び命令文ごとに網羅 率を集計して出力する。 カバレージ 通過ルートをマーキング。 ✔ソースエリア 構造化フローチャート ✔通過パス消し込みエリア ✔実行回数集計エリア テストにて実行された行(通過 行)にマーキング。(黄色に塗られ た部分が通過した行です。) テスト実行された回数を集計して 出力する。 Copyright © 2014 アイ・システム株式会社 All Rights Reserved 凡例(通過パス消込結果シート内の記号) I:IF 〇:命令文 T:THEN *:コメント行 E:ELSE <>:カッコ EI:END-IF -: 3 ⇒ 拡張機能② テストケースの明確化、カバレージとトレース ◆テスト実行結果の結合トレース表示 ✔ 結合テスト環境でもテスト実行結果(通過ルート)をプログラム単位で確認可能。 ✔ 再現テストでの実行パストレースも可能に。 被テストプログラム構成(例) テスト後の通過パス消込イメージ(例) <個別メソッド毎の実行パス> 結合テスト単位 Test-nn Test-02 Test-01 メインメソッド X Test-01 X X メソッド A メソッド毎 A 手繰り寄せ形式による 実行パス・トレース表示 d A メソッド d メソッド テスト実施し 通過ログを マーキング e e トレース B B メソッド B 同じ メソッド 手繰り寄せ後の通過パス消込 シートに通過ログをマーキン グすることでトレースするこ とが可能。 C メソッド C d C メソッド e e e テスト対象メソッド全てに通過ログ取 得機能を埋め込む。 Copyright © 2014 アイ・システム株式会社 All Rights Reserved 4 拡張機能② テストケースの明確化、カバレージとトレース ◆ 実行パスの正確化、厳密化:漏れの無いパス ✔ 4つの通過ルート ソース解析(正規化)による処理パスの厳密化 ①複合条件の分解 Ex. If (a=b) and (c=d) ➔単位条件判定(a=bとc=d) に分解。 If (a=b) and (c=d) then 処理1 else 処理2 End-if 正規化 ②省略されたelse句も通過検証が可能 正規化によりelse句を補完 Copyright © 2014 アイ・システム株式会社 All Rights Reserved I If a=b then If c=d then 処理1 else 処理2 End-if else If c=d then 処理2 else 処理2 End-if End-if T I T ○ - E E ○ EI - T ○ - E ○ EI EI I If a=b then If c=d then 処理1 else 処理2 End-if End-if T I T ○ - 正規化による補完 Else continue 5 - E - ○ - EI - EI E ○ ← 補完された通過ルート 拡張機能② テストケースの明確化、カバレージとトレース ◆ 効果 効果 ●テスト品質の「標準化」と「向上」の実現。 テスト支援ツールとして、i-Toolの通過パス消込機能を適用することで、テスト品質が 標準化され、さらに品質が向上した。 ➔ 初期段階での適用により、結合テスト以降での手戻りが削減。 ➔ Copyright © 2014 アイ・システム株式会社 テストケースの網羅性の把握が容易(視覚的な把握)となり、ケース漏れが削減。 All Rights Reserved 6
© Copyright 2024 ExpyDoc