我正在使用 F# 编写我的测试方法,但 Nunit 抱怨这些方法是非公开的。
namespace Test
open NUnit.Framework
type public Test() =
[<Test>]
let testIt () =
Assert.AreEqual(10,10)
我需要改变什么?
由于let
绑定对父类型是私有的,因此您必须member
改用:
namespace Test
open NUnit.Framework
[<TestFixture>]
type public Test() =
[<Test>]
member x.testIt() =
Assert.AreEqual(10, 10)
如果您不需要复杂的设置,let
最好直接使用模块级绑定:
module Test
open NUnit.Framework
[<Test>]
let testIt() = Assert.AreEqual(10, 10)
您可以将 F# 测试用例放在一个模块中,以使它们对 NUnit 公开和可见:
module Tests
open NUnit.Framework
let [<Test>] ``10 should equal 10`` () = Assert.AreEqual(10,10)