[TestCase(1)] public void Test(ulong n) { // ... }
などと書いた場合、整数を書くとintと認識されるので:
Test(1), Failed: System.ArgumentException : 型 'System.Int32' のオブジェクトを型 'System.UInt64' に変換できません。
というエラーが出てテストが実行できない。
[TestCase(1ul)] public void Test(ulong n) { // ... }
としてあげると良いらしい。まあ、そりゃそうか。NUnitの中ではメソッド呼び出し時にリフレクションを使っているっぽく、型が違うとそこでエラーになるみたい。