我正在尝试让我的持续集成设置为我运行单元测试,所以我已经设置了
<RunTest>true</RunTest>
我已将测试设置为自动发现:
<ItemGroup>
<TestContainer Include="$(OutDir)%2a.Test.dll" />
</ItemGroup>
在我的开发机器上运行构建运行我的单元测试,并报告构建成功;当作为自动构建运行时,测试运行(根据BuildLog),但我在日志中看到了这一点:
发布测试运行结果tfs_service @ TFS-BUILD 2012-04-13 14:13:59_Any CPU_Release to http://mycompany-tfs:8080/Build/v1.0/PublishTestResultsBuildService2.asmx ...
。无法访问drop share目录“\ tfs-build \ Builds \ Test \ MyProduct Test_20120413.2”。
无法访问drop share目录“\ tfs-build \ Builds \ Test \ MyProduct Test_20120413.2”。
MSBUILD:警告MSB6006:“MSTest.exe”已退出,代码为1。
之前的错误已转换为警告,因为使用ContinueOnError = true调用了任务。
这很奇怪,因为二进制文件发布得非常愉快。
我尝试通过登录到构建服务器的控制台,运行Visual Studio 2008命令提示符,导航到源位置以及调用MSBuild来尝试诊断问题,它似乎甚至没有尝试调用单元测试?
最终,我更感兴趣的是“猜测为什么结果丢失失败” - 它可能是我的构建定义名称中的嵌入空间吗?鉴于二进制文件发布好,我还能检查什么?
答案 0 :(得分:0)
单元测试正在运行,问题是结果未正确发布。运行单元测试时,结果将发布到tfs服务器,然后复制到放置位置。因此,drop share需要允许TFS构建服务帐户写入此文件夹。