我最近在我们的项目中添加了一个TFS构建,并将其配置为运行项目中的自动化测试,并且由于某种原因,构建忽略了测试,就好像它们不存在一样!
为了解决这个问题,我创建了另一个解决方案,其中只包含来自原始代码和测试项目的基本项目。 我已将这些添加到TFS并配置了与此解决方案几乎相同的构建,并猜猜是什么?它执行了测试!它与原始测试相同。只是它的副本。
这两个解决方案之间的主要区别是原始代码是许多项目的大解决方案,大多数项目都在某种解决方案目录中(测试项目也是如此)它也在解决方案目录中。)
TFS构建定义之间的区别仅在于构建的输出位置设置为单个目录(我也尝试过PerProject并且它工作)并且在原始代码中它被定义为“AsConfigured” “因为我们有一些构建任务来复制dll等。
有没有人遇到过这个问题? 有什么想法吗?
由于
答案 0 :(得分:3)
TFS将在 BINARIES 输出文件夹位置查找测试DLL。您需要配置“复制DLL的构建任务”以确保将测试DLL复制到此位置。
测试程序集文件规范 指定包含要运行的测试的二进制文件。如果希望构建代理以递归方式搜索与构建的二进制文件子目录中的* test * .dll匹配的任何.dll文件,请保留默认值(** \ ** test * .dll)代理人的工作目录。
TFS2013 - http://msdn.microsoft.com/en-us/library/ms253138.aspx
TFS2012 - http://msdn.microsoft.com/en-us/library/ms253138(v=vs.110).aspx