PHP のファイルの読み書きをユニットテストする方法を探していたところ vfsStream という仮想のファイルシステムを提供してくれるツールを見つけました。 例えば下記のようなファイルの内容を1行ずつ読み取って配列に格納するメソッド read をもった Hoge クラスをテストの対象とします。 <?php class Hoge{ public function read($filename){ $fh = fopen($filename, 'r'); $terms = array(); while($term = fgets($fh, 1024)){ $terms[] = $term; } return $terms; } } そして下記は Hoge クラスの read メソッドを、vfsStream を使ってテストする PHPUnit のテストコードです。なお、vfsStream は