2017-09-26 116 views
0

如何在不实例化测试类中的对象的情况下测试void方法?我理解在一个内部静态类中,我们无法使用“新”来创建一个对象来测试它。我已经通过为非静态类创建对象进行了单元测试,但是我没有处理内部静态类并被卡住了。任何指导都会很棒。在内部静态类中测试void方法的单元

这里是有问题的类/方法:

回答

4

可以使用InternalsVisibileTo属性,让另一个项目访问内部类。

[assembly: InternalsVisibleTo("NameOfYourUnitTestProject")] 

这将允许您的测试项目致电Util.AssertBytesEqual。通常在汇编级别应用AssemblyInfo.cs文件中应用的属性。

至于测试实际的方法本身,它看起来像唯一的'输出',可以这么说,是一个例外。您只需测试该方法是否为各种输入引发异常。