Property based testingとは 歴史的な背景として2000年にJohn HughesとKoen Clasessenによって 開発されたQuickCheckがProperty based testingとしてHaskellエコシステムに実装されました。 QuickCheckはプロパティ(特定の入力が与えられると出力として期待される特性) を与えることで、 テストデータをランダムに生成して、失敗するケースを見つけるHaskellで実装されたフレームワークです。 それによってテスト対象のシステムがプロパティに従っているかどうかをチェックします。 QuickCheckは単体テストだけではなく、統合テストやサンプルベースのテスト等幅広く使われています。 このテスト方法はProperty based testingとして知られるようになりました。 2020年現在は、HaskellのQ