Scott Wlaschin氏は著書である"Domain Modeling Made Functional" (和訳本なし)に関する講演で、関数型言語を用いてドメインモデルを定義すると、テストを書く必要がなく、たくさんのフラグをチェックする必要もないと説明しています。
彼はこの方法を「自己文書化」と「コンパイル時のユニットテスト」と呼んでいます。
この話では、彼の言う「コンパイル時のユニットテスト」が具体的にどのようなものなのか、そしてこの方法を使うことでテストがどれほど効率的になるのかを扱います。ただし、ドメイン駆動開発の定義やC#やF#の詳細な文法については説明しません。
https://zenn.dev/jtechjapan_pub/articles/d4e1dacb6f00a2
こちらのブログで練習で話したセッションなども見ることが可能です。