Skip to content
2009/04/19 / highmt

「プログラム解析による自動テスト生成の可能性」

日経エレクトロニクス 2009-04-20号より。Microsoft Researchの論文。

3つの事例について書いてある。

  • SAGE。動的テスト生成。
  • Pex。パラメータ化された単体テスト(PUT)に対して実際のテストコードを生成。
    JUnitとかでテストコードとAssertを混ぜて書いていたのを、
    Assertだけ書いておいたものに、外からそれにいろんなデータを生成して渡すイメージ。
  • Yogi。静的手法によって(ループなどにより)無限のパスをもつプログラムを有限化する。

以下感想。

  • SAGEは、仕様に対するプログラムの正しさをチェックするわけではない。ファズテストの延長。
  • Yogiは、リバースエンジニアリングの手法として面白い。
    でも、実は仕様が先にあるべきじゃないの、とも思う。
  • Pexは、仕様とテストコードを分離したところが面白い。
    今考えていることとちょっと近いかも。
広告
%d人のブロガーが「いいね」をつけました。