データフローテスト 【data flow testing】 データフローパステスト
概要
データフローテスト(data flow testing)とは、ソフトウェアテストの手法の一つで、データや変数の使用の仕方に矛盾が無いかを調べるためのもの。ソフトウェアの内部構造を前提とするホワイトボックステストの一種。プログラム中に登場するデータや変数は、定義や入力に始まり、処理や使用、参照され、削除、解放されて消滅するという過程をたどって取り扱われる。データフローテストでは各ステップがこの順番通りに行われているか調べられるようなテストデータの組み合わせを与える。
これにより、コード中で一度も参照されない無駄な変数の宣言や、使用前に何度も繰り返し行われる無駄な初期化処理、使い終わったメモリ領域の解放し忘れによるメモリリーク、未定義のデータや初期化前の変数を処理しようとして生じるバグなどを発見することができる。
どのような変数を対象として、どのようなデータを与えるかといった違いによっていくつかの種類があり、テストの目的や予算などに応じて適切なものを選択する必要がある。ある程度機械的にチェックを行ってくれるツールなどもある。
(2024.2.8更新)