Вы можете использовать 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
определяет свойство с помощью этого настраиваемого генератора.
Вы можете combine it with FsCheck's 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))
Я думаю, вы могли бы выполнить это создать свой собственный генератор: https://fsharp.github.io/FsCheck/TestData.html – Christian
Спасибо за link :-) Исправлено! –
вы должны либо удалить свой вопрос, либо развернуть его, чтобы мы могли сделать его полезным для будущего пользователя, тогда – Carsten