私のコードは、FsCheck を使用している間、-99 から 99 までの値を自動的にテストしています。
Check.Quick test
私のテスト関数は整数値を取ります。
1 から 4999 までの値を使用してテストしたいと思います。
Gen.elements
と組み合わせて使用できますProp.forAll
:
let n = Gen.elements [-99..99] |> Arb.fromGen
let prop = Prop.forAll n (fun number ->
// Test goes here - e.g.:
Assert.InRange(number, -99, 99))
prop.QuickCheck()
Gen.elements
有効な値のシーケンスを取り、そのシーケンスから一様なジェネレータを作成します。Prop.forAll
そのカスタム ジェネレーターでプロパティを定義します。
これを FsCheck の Glue Library for xUnit.net と組み合わせることができます。これは私の好みの方法です。
[<Property>]
let ``Number is between -99 and 99`` () =
let n = Gen.elements [-99..99] |> Arb.fromGen
Prop.forAll n (fun number ->
// Test goes here - e.g.:
Assert.InRange(number, -99, 99))