我正在设置一个 TFS 2012 构建代理,并且在引用外部文件的单元测试中遇到了一个小问题。(是的,是的,这很糟糕......那里没有参数!我仍然需要运行构建)测试使用的是 MSTest (VisualStudio.TestTools.UnitTesting) 框架。
Resources
目前,解决方案根目录下有一个文件夹,所有测试(不幸的是在子目录中处于不同深度)加载具有某种级别的相对路径( ..\\..\\..\\Resources\\resource.txt
)的文件。
如您所知,TFS 将所有输出复制到与 具有bin
相同级别的文件夹中src
,该文件夹具有所需的Resources
文件夹。无法将此文件夹复制到目录结构中足够高的位置,以便构建代理通过测试。
我希望这些问题中的任何一个都可以为我提供解决此问题的权宜之计:
是否有任何环境变量(或类似的东西)可用于检测单元测试是否正在通过 TFS 构建代理运行并相应地更改代码中资源文件的路径?
有没有一种简单的方法来告诉 TFS 将文件输出到
bin
与在 Visual Studio 中构建时具有相同层次结构的文件夹中?(我说简单的原因是因为我发现了一些相当长的构建修改可能可以处理这个问题)