我正在使用F#编写我的测试方法,但是Nunit抱怨这些方法不公开。
namespace Test
open NUnit.Framework
type public Test() =
[<Test>]
let testIt () =
Assert.AreEqual(10,10)
我需要改变什么?
答案 0 :(得分: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)
答案 1 :(得分:7)
您可以将F#测试用例放在module中,以使其公开并对NUnit可见:
module Tests
open NUnit.Framework
let [<Test>] ``10 should equal 10`` () = Assert.AreEqual(10,10)