テストケースをいい感じに自動生成し、もりもりバグを取りながらも可読性・メンテナンス性の高いテストが書けるという噂の、Property-Based Testing (PBT) についての記事を書きます。 Property-Based Testing with PropEr, Erlang, and Elixir を読んで基本的な内容を整理したあと、適当な OSS のテストを書いてみたり、「みんなのデータ構造」という本の実装に Property-Based なテストを書いたりしながら解説をしようと思っています。 参考文献は Erlang/Elixir を採用しており、「みんなのデータ構造」のサンプル実装は Golang で書いたため、私の記事はそれらの言語でやっていく予定です。一方、PBT といえば Scala や Haskell が特に有名だと思うので、これらの言語での PBT について記事