• ビジネス
  • IT
  • テクノロジー
  • 医療
  • 建設・不動産
  • TRENDY
  • WOMAN
  • ショッピング
  • 転職
  • ナショジオ
  • 日経電子版
  • 日経BP
  • PR

  • PR

  • PR

  • PR

  • PR

テストの実践手法を理解する

Part2 ホワイトボックス技法

湯本 剛 2007/02/26 日経ソフトウエア

ソフトウエアやシステムの内部構造に着目するホワイトボックス・テストでは,処理の複雑さや機能の重要度などを考慮して,適切なカバレッジ基準を選択してテストを実行することがポイントになります。

 ホワイトボックスのテスト設計技法として最も有名なのは,「制御パス・テスト」という技法です。一般的に「単体テストではカバレッジを確認するようにしてください」という指示がある場合は,たいてい制御パス・テストで計測できるカバレッジを指しています。

 制御パス・テストは関数やメソッドのロジックの処理経路(パス)を動かすテスト方法です。制御パス・テストには,複数のカバレッジ基準があります。JSTQB*1の用語集から,どのような基準があるかを図1に整理してみました。カバレッジといってもこのようにいろいろなものがあり,どのカバレッジ基準を適用するかによってどこまでテストをすれば良いかが大幅に変わってきます。

図1●制御パステストのカバレッジ基準。ソフトウェアテスト標準用語集(日本語版)1.1(http://www.jstqb.jp/syllabus.html)を参考にした
[画像のクリックで拡大表示]

 では,図1から代表的なカバレッジ基準についていくつか詳しく説明していきましょう。

ステートメント・カバレッジ

 ステートメント・カバレッジでは,テスト対象のコード中の実行可能ステートメント(命令文)のうち,テストによって何パーセントを実行したかをカバレッジ基準として評価します。ステートメント・カバレッジの例として図2のメソッドをテスト対象として説明しましょう。

図2●メソッド例
図2●メソッド例

 図2のソースコードをフローチャートで表現すると図3のようになります。

図3●図2のフローチャート
図3●図2のフローチャート

 ステートメント・カバレッジでは,フローチャートの命令文を表現している部分(四角の部分)をすべて実行していることを確認します。例えば図3のフローチャートの場合は,引数にそれぞれ【a=4,B=0,C=7】というデータを与えてテストをすれば,ステートメント・カバレッジを100%満たしたテストを実施できたことになります(図4)。

図4●ステートメント・カバレッジ
[画像のクリックで拡大表示]

 したがって,ステートメント・カバレッジのためのテスト・ケースは以下の一つで良いことになります。

テスト・ケース1
  入力値【a=4,B=0,C=7】 期待結果 7
  ⇒命令(1),(2),(3),(4)を通過

ここから先はITpro会員(無料)の登録が必要です。

次ページ ブランチ・カバレッジ
  • 1
  • 2

あなたにお薦め

連載新着

連載目次を見る

今のおすすめ記事

ITpro SPECIALPR

What’s New!

経営

アプリケーション/DB/ミドルウエア

クラウド

運用管理

設計/開発

サーバー/ストレージ

クライアント/OA機器

ネットワーク/通信サービス

セキュリティ

もっと見る