TFS构建服务器2013和XUnit

3

我在本地搭建构建服务器时遇到了问题。

我有一个通常的测试结构,即:

--\HellowWorld\HelloWorld.sln
--\HellowWorld\HelloWorld.csproj
--\HelloWorld.Tests\HellowWorld.Tests.csproj

我正在使用Visual Studio Online和本地构建服务器进行构建和部署。对于下载源代码、构建和部署C# .net应用程序没有任何问题。
我已经为XUNIT创建了一个包含必要DLL文件的文件夹,并将其检入到TFS中。在“版本控制路径到自定义程序集”的构建服务器对话框中,路径如下:
$/IT Development/Bin/XUnit
该文件夹中包含以下DLL文件。
xunit.abstractions.dll
xunit.runner.utility.dll
xunit.runner.visualstudio.settings.dll
xunit.runner.visualstudio.testadapter.dll

以下博客文章建议这应该足够了。
http://social.msdn.microsoft.com/Forums/vstudio/en-US/02bce20c-1e5b-47cc-8f64-0ff8aa5a19cf/tfs-2012-build-to-run-xunittest?forum=tfsbuild

我在构建输出中看到以下内容

> $/IT Development/HelloWorld/HelloWorld/HelloWorld.sln已编译 $/IT Development/HelloWorld/HelloWorld/HelloWorld.sln - 0个错误,6个警告,查看日志文件 没有测试结果 没有代码覆盖率结果 受影响的测试 没有受影响的测试


在您的构建定义中,您是否指定了测试运行程序? - Just TFS
你是否已经将DLL文件添加到控制器的自定义二进制文件夹中? - Wouter de Kort
是的,对于这两个问题都是肯定的。 - El Toro Bauldo
1个回答

1

我通过在构建服务器上安装Visual Studio专业版来解决了这个问题。这样可以在构建机器上访问VisualStudio测试运行程序。虽然有些笨拙,但这是最简单的选择。


这是正确的解决方案。它不是暴力破解。您的构建服务器需要镜像开发环境。 - MrHinsh - Martin Hinshelwood
3
我不这么认为,Hinsh先生。我认为我应该安装一个测试代理。 - El Toro Bauldo
测试代理不是开发人员运行单元测试的活动,而是测试人员运行自动化测试的活动。我理解你的意思,但构建服务器(编译)使用VS,测试服务器使用代理。 - MrHinsh - Martin Hinshelwood
4
不,构建服务器不会安装 Visual Studio,它们会安装 Team Foundation Build 服务。 - Michel van Engelen

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接