【发布时间】:2015-12-02 16:55:56
【问题描述】:
我最近升级到 ReSharper 10.0.1 for Visual Studio 2013。我的单元测试项目包含一个 app.config 文件,其中包含以下内容:
<appSettings file="AppSettings.local.config">
<add key="otherSetting" value="foo" />
</appSettings>
<connectionStrings configSource="ConnectionStrings.local.config" />
引用的配置文件设置为“始终复制”到输出目录。我验证测试是从项目文件夹的 \bin\debug 运行的,并且两个引用的配置文件都正确复制到该文件夹。但是,在运行测试时,我观察到:
-
ConfigurationManager.AppSettings不包含 AppSettings.local.config 中的任何键。 -
ConfigurationManager.AppSettings包含otherSetting。 -
ConfigurationManager.ConnectionStrings包含 ConnectionStrings.local.config 中的所有键。 - 在
<appSettings>中使用configSource属性而不是file也不起作用。
我管理配置文件的方式很长一段时间都没有改变,并且一直运行良好。这个问题似乎与升级到 ReSharper 10 相吻合。在 ReSharper 的单元测试设置中,我禁用了“影子复制程序集”和“使用单独的 AppDomain”,并且“运行测试自”设置为项目输出文件夹。更改这些设置后,我已多次重新启动 VS。
这听起来像是一个可能的 ReSharper 错误还是我可能遗漏了一些明显的东西?
更新:
我已降级到 ReSharper 9.2,我的烦恼消失了。所以我只能得出结论,这是一个 ReSharper 10 问题。但我不确定这是否是一个真正的错误(当然看起来是这样),或者我是否错过了某个地方的新设置,所以任何见解仍然会受到赞赏。
【问题讨论】:
-
我还可以确认 VS2015 和 resharper 10.01 正在发生这种情况
标签: c# .net unit-testing resharper