我目前正在开发一个应用程序,其中包括一个使用 TCP 服务器和 TCP 客户端的通信模块。通信模块包括一个目录“Core”,其中包含私有类来执行通信模块的内部功能。
我的目标是为“Core”目录中的类创建单元测试。但是,它们不能从测试项目中访问。
是否有一种方法或设计模式可以让我阻止在程序集之外使用这些类,测试程序集除外?
谢谢,
我目前正在开发一个应用程序,其中包括一个使用 TCP 服务器和 TCP 客户端的通信模块。通信模块包括一个目录“Core”,其中包含私有类来执行通信模块的内部功能。
我的目标是为“Core”目录中的类创建单元测试。但是,它们不能从测试项目中访问。
是否有一种方法或设计模式可以让我阻止在程序集之外使用这些类,测试程序集除外?
谢谢,
您可以通过添加以下行使内部类对 YourTestProject 可用:
[assembly: InternalsVisibleTo("YourTestProject")]
在您要测试的项目的 AssemblyInfo.cs 中。
您可以使用InternalsVisibleTo属性使内部类对测试程序集可见。