TL;DR

F# でプロパティベーステストを行うためのテスティングフレームワーク。

仕組み

関数やメソッド、オブジェクトが満たすべき性質(プロパティ)を書くと、FsCheck がランダムに生成した多数の値でそれを確かめる。テストに使う値の生成器(ジェネレータ)と、失敗した値を小さくする方法(シュリンカ)を柔軟に記述できる。プロパティが成り立たないときは、最小の反例を自動で表示する。

仕様は F# のほか、C# や VB でも書ける。

関連

出典