看起来我作为单元测试运行的属性测试失败了,即使它确实通过了。
代码如下:
module Tests.Units
open FsUnit
open NUnit.Framework
open NUnit.Core.Extensibility
open FsCheck.NUnit
open FsCheck.NUnit.Addin
open FsCheck
let add x y = (x + y)
let commutativeProperty x y =
let result1 = add x y
let result2 = add y x // reversed params
result1 = result2
[<Test>]
let ``When I add two numbers, the result should not depend on parameter order``()=
Check.Quick commutativeProperty |> should equal true
概括:
测试名称:当我添加两个数字时,结果不应该取决于参数顺序
测试全名:Tests.Units.当我添加两个数字时,结果不应该取决于参数顺序
测试结果:失败
结果 StackTrace:在 FsUnit.TopLevelOperators.should[a,a](FSharpFunc`2 f, ax, Object y) in d:\GitHub\FsUnit\src\FsUnit.NUnit\FsUnit.fs:line 44
在 Tests.Units. 当我添加两个数字时,结果不应该取决于参数 order()
结果消息:预期:true,但是是
结果标准输出:好的,通过了 100 次测试。
我读对了吗?
我错过了什么?