レコード型とプロトタイプ

レコード型、毎回すべてのプロパティを設定するのは大変なのでデフォルト値を設定したプロトタイプのインスタンスをあらかじめ作っておくといいかもしれない。
毎回 with を使って作成することになるので型が明示されてわかりやすいというおまけもあります。

open NUnit.Framework

type Person =
{ FirstName:string;
LastName:string;
Age:Option<int> }

let PersonProto =
{ Person.FirstName = "";
LastName = "";
Age = None }

[<Test>]
let ``test record proto``() =
let person =
{ PersonProto with
FirstName = "Hoge";
LastName = "Fuga" }

Assert.AreEqual({FirstName = "Hoge"; LastName = "Fuga"; Age = None}, person)