6

F# を使用してテスト メソッドを記述していますが、Nunit はメソッドが公開されていないと文句を言っています。

    namespace Test

open NUnit.Framework

type public Test() = 

    [<Test>]
    let testIt () =

        Assert.AreEqual(10,10)

何を変更する必要がありますか?

4

2 に答える 2

11

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)
于 2013-01-30T16:26:37.747 に答える
7

F# テスト ケースをモジュールに配置して、それらを公開し、NUnit に表示することができます。

module Tests

open NUnit.Framework

let [<Test>] ``10 should equal 10`` () = Assert.AreEqual(10,10)
于 2013-01-31T07:54:21.417 に答える