2

如何将配置应用于一组基于属性的测试?

我尝试了以下方法:

let config = { Config.Quick with MaxTest = 10000
                                 QuietOnSuccess = true }

[<Property(Config=config)>] // Doesn't work because "Config" is a private member
let ``my property-based test`` () =
   ...

但是,该Config成员被设置为私有并且不会编译。

有什么建议么?

4

1 回答 1

4

如果要设置MaxTest10000,请使用以下MaxTest属性:

[<Property(MaxTest = 10000, QuietOnSuccess = true)>]
let ``my property-based test`` () =
   // ...

如果你觉得这违反了 DRY 原则,必须为每个属性键入它,你可以创建一个派生属性:

type MyPropertyAttribute() =
    inherit PropertyAttribute(
        MaxTest = 10000,
        QuietOnSuccess = true)

然后在您的属性上使用该属性:

[<MyProperty>]
let ``my property-based test`` () =
   // ...
于 2016-08-11T15:14:49.927 回答