tfs - 使用 vstest.console.exe.config 而不是 app.config 构建 TFS
问题描述
一段时间以来,我们让 TFS2017 在构建过程中运行我们的单元测试 (xUnit)。每个测试项目都有自己的app.config
文件声明一些 appSettings。
我们的代码正在查看这些应用设置,例如ConfigurationManager.AppSettings["someSetting"]
最近有一些开发者从VS2015升级到VS2017(不确定是否相关),我们的测试开始失败。
原来是从加载的appSettingsvstest.console.exe.config
而不是app.config
测试项目中包含的文件。
虽然我们能够将设置添加vstest.console.exe.config
到此不是我们的首选解决方案,但我们希望app.config
再次使用该文件进行测试。
关于如何做到这一点的任何想法?我不知道一开始发生了什么变化。
解决方案
确保未更改 WorkingFolder。它应该相对于包含 test.dll 的文件夹。
此外,您可以尝试<exec>
MSBuild 中的任务来运行控制台运行程序。
运行多个程序集时,您可以使用 ItemGroup 元数据为每个程序集指定配置文件。该<xunit>
任务在项目组中的每个项目上查找名为 ConfigFile 的元数据。当AppDomains设置为false时,将忽略配置文件。
推荐阅读
- python - Python Pandas Dataframe 永久 cumprod
- javascript - 计算两个“”之间的字符串(数字),并将其替换为值的一半
- javascript - 基于内部对象值的传单标记颜色
- webpack - 找不到条目模块中的错误:错误:无法解析“xxxx”中的“xxxx”解析“xxxx”
- c++ - 当指向右值引用的指针时会发生什么
- mysql - SQL:可选地对多列进行分组
- javascript - Vuetify - 如何使 setSelectionRange(int, int) 在其模型更改时在 v-textarea 中工作
- ssms - SSMS 中的视觉故障
- javascript - 如何使 webpack4 中的多个条目的“窗口”对象通用和可见?
- python - 间歇性 sqlalchemy drop_database 错误 (psycopg2.ProgrammingError) 必须是其进程被终止的角色的成员