我目前正在使用TFS 2013中的默认构建流程模板进行自动构建。
我已将OutputLocation
参数配置为AsConfigured
以获得与我的Visual Studio解决方案相同的文件夹结构(解决方案中有多个项目,我不希望它们都是放在同一个文件夹中。)
问题是,当构建过程尝试运行测试时,它会在bin
文件夹下查找任何程序集,而我的构建配置会使其只有src
个文件夹。
有没有办法指定查看src
文件夹?使用AsConfigured
设置时,它不应该是默认值吗?
编辑:为了说清楚,运行TFS自动构建(src,bin,tst)时通常会生成3个文件夹。使用AsConfigured作为输出位置时,没有bin文件夹。我尝试了一个建议,需要更改构建过程的Test sources spec
设置,我遇到了和以前一样的问题:
There were no matches for the search pattern C:\Builds\8\MyProject\MyBuildDefinition\bin\***test*.dll
答案 0 :(得分:2)
我最终做的是使用PowerShell脚本作为构建后事件将我的测试程序集复制到构建的bin文件夹。
在CodePlex上为TFS 2013提供了PowerShell脚本,我稍微修改了this one以满足我的需求。
通过这样做,我能够使用默认设置来运行测试,它就像一个魅力。
答案 1 :(得分:1)
在构建定义中,将设置“Test Sources spec”的值更改为*** test * .dll(假设您的单元测试程序集后缀为.test.dll)
编辑:请使用 ** \ * test * .dll; ** \ * test * .appx
答案 2 :(得分:1)
尝试使用此文件掩码:..\**\*test*.dll
它对我有用。
答案 3 :(得分:0)
我为X64平台设置了“AsConfigured”设置,将二进制文件放入src\x64\Release\
(并且用于将它们放入bin\x64\Release\
而没有该切换)。所以,我最终使用..\..\..\src\**\*test*.dll
作为我的“测试源规范”。