使用vstest.console.exe.config而不是app.config

时间:2018-08-10 13:38:19

标签: tfs xunit

一段时间以来,我们让TFS2017在构建过程中运行了单元测试(xUnit)。每个测试项目都有自己的app.config文件,其中声明了一些appSettings。

我们的代码正在查看ConfigurationManager.AppSettings["someSetting"]这类应用设置

最近,一些开发人员从VS2015升级到VS2017(不确定是否相关),我们的测试开始失败。

结果是,从vstest.console.exe.config加载的appSettings而不是测试项目中包含的app.config文件。

虽然我们不能将设置添加到vstest.console.exe.config,但这不是我们的首选解决方案,但我们希望再次使用app.config文件进行测试。

关于如何实现此目标的任何想法?首先我不知道发生了什么变化。

1 个答案:

答案 0 :(得分:0)

确保不更改WorkingFolder。它应该相对于包含test.dll的文件夹。

此外,您可以尝试MSBuild中的<exec>任务来运行控制台运行程序。

运行多个程序集时,可以使用ItemGroup元数据为每个程序集指定配置文件。 <xunit>任务在项目组中的每个项目上查找名为ConfigFile的元数据。将 AppDomains 设置为 false 时,配置文件将被忽略。