用于单元测试的多个 App.config [重复]

Posted

技术标签:

【中文标题】用于单元测试的多个 App.config [重复]【英文标题】:Multiple App.config for Unit Tests [duplicate] 【发布时间】:2013-09-10 12:11:07 【问题描述】:

我正在为一个需要测试的大项目进行单元测试。我的项目有 10 个不同的模块。

最初,我有我的App.config,在那里我定义了我的ModuleConfiguration.xml 的路径和名称以及更多的东西......在这个文件中,我有我用于这些测试的所有标签和值。 到现在为止,一切正常。

但是我的ModuleConfiguration 变得非常非常大,所以我决定拆分并为每个模块设置一个ConfigurationFile.xml...

例如:

调制解调器模块ModemConfiguration.xml HelperModuleHelperConfiguration.xml 等等……

但是对于每个不同的配置文件,我也需要一个App.config...

所以,我的问题是如何在我的项目中使用 多个 App.config 文件...

提前感谢您的帮助!

【问题讨论】:

【参考方案1】:

将模块拆分为各自的项目,然后添加为链接“主”App.config 文件:

    在解决方案资源管理器中右键单击项目 选择添加 -> 现有项目... 浏览到包含要与此项目共享的 App.config 的“主”项目 单击文件类型下拉过滤器并选择所有文件 (*.*) 选择 App.config 点击添加按钮旁边的小箭头并选择添加为链接

我已经在屏幕截图中添加了 App.config 作为指向 Module01 的链接。如果您仔细观察,您会注意到 Module01 的 App.config 的小快捷方式覆盖 - 这意味着它从另一个项目(在本例中为 MyApplication 项目)链接到该项目。

还有其他方法可以实现您想要的,但我相信这最适合您的方案。

【讨论】:

感谢 Sammeer Singh,但将模块拆分为自己的项目是不可能的……它只是一个项目。 嗯,也许你应该考虑一下,因为你在问题中提到有很多东西需要测试并且它们是模块化的。 话虽如此,请查看@Tobias 发布的链接。他们可能会帮助您找到问题的最佳解决方案。

以上是关于用于单元测试的多个 App.config [重复]的主要内容,如果未能解决你的问题,请参考以下文章

App.config 替换单元测试

使用 NUnit 对 app.config 文件进行单元测试

如何使用主机类型(“Moles”)从测试中读取单元测试项目 App.Config

无法使用 ConfigurationManager 在 C# .NET Core 单元测试项目中读取 app.config

MSTest 和 app.config 问题

如何为多个构建配置选择不同的 app.config