nUnit新手,在这种情况下无法获取错误..."因为它是公共'"

时间:2016-02-11 17:37:02

标签: vb.net access-modifiers nunit-3.0

我已经将以下代码编写为我在nUnit中的第一个测试。

Public Class Tests

    <TestFixture()>
      Private Class TranslationTest

          <Test()>
          Private Sub LanguageTest()
            Dim stringToTest As String = "Tower Count"

            strLanguageText(stringToTest, LanguageIDs.English, 0)
            Assert.Equals("Tower Count")


          End Sub
      End Class
    End Class

Intellisense表示strLanguageText方法和LanguageIDs.Enlish枚举都不能在此上下文中访问,因为它是&#39; Public&#39;&#34;。我可以理解一些不可访问的东西,因为它的修饰符是Private,但是为什么有一个Public的修饰符会阻止它被测试访问?

1 个答案:

答案 0 :(得分:2)

尽管错误表示&#34; Public&#34;当我看着正在测试的方法时,它的修饰符是Friend。当我将测试分配给与被测试方法相同的命名空间时,它起作用了。

更新:根据O&#39; Reilly的C# & VB.NET Conversion Pocket Reference,&#34; IL级别的外部课程只有两个可能的范围:私人或公共。& #34;

我的错误猜测是,这就是错误报告为公共&#39;

的原因。