如果我试试这个,我刚刚得到一个异常:

System.TypeLoadException : Access is denied: 'Namespace.IInternalInterface'.

使得界面公共不是可接受的解决方案。我不想改变我的API的可见性,以测试它。

有帮助吗?

解决方案 2

我发现这个问题的答案:

NMock2,(和其他嘲笑框架)。将创建一个动态生成组件的模仿对象。为了使模拟框架来创建模拟对象,的内部应该是这些组件可见。

只需添加下面的声明到的AssemblyInfo.cs类用于在测试模块:

// Allow unit test and mock assemblies to see internal members.
[assembly: InternalsVisibleTo("MyAssembly.UnitTest")]
[assembly: InternalsVisibleTo("NMock2")]
[assembly: InternalsVisibleTo("Mocks")]
[assembly: InternalsVisibleTo("MockObjects")]

其他提示

实测值并记录该溶液中。

http://www.rhyous.com/2012/05 / 03 / nmock2内部接口/

原来,NMock2的新版本(我在这里: NMock2项目)只需要之一,它是不同的。

[assembly: InternalsVisibleTo("DynamicProxyGenAssembly2")]
许可以下: CC-BY-SA归因
不隶属于 StackOverflow
scroll top