在构建服务器上进行单元测试需要什么?

时间:2013-12-13 20:21:31

标签: tfs mstest

我正在进行单元测试(除了VS 2013开箱即用之外没有其他框架)。

一切都在本地运作。要使它在构建服务器上运行,我需要做什么?构建服务器是TFS 2013.除了2010版本之外,没有安装Visual Studio。我已经将所有4.5 .net内容和.targets文件从我的visual studio移动到构建服务器,以便能够编译4.5个dll和azure项目。

首先我遇到构建模板的问题是使用AgileRunner或VS2013附带的东西。我把它改成了MSTest。这是正确的改变吗? MSTest的安装程序是否只有没有可以在构建服务器上安装的visual studio?

我的老板更喜欢我是否可以避免在构建服务器上安装Vs2013。

2 个答案:

答案 0 :(得分:10)

只需在构建服务器上安装Visual Studio;这是一种非常普遍的做法。要求是mentioned in the installation guidelines。如果需要,您可以并排安装Visual Studio 2010和2013。 .NET有很多部分依赖它。

  

安装Visual Studio和其他软件以启用编译和其他功能

     

您必须在构建代理上安装团队在其开发计算机上使用的Visual Studio版本。请参阅安装Visual Studio。您还必须安装开发计算机上安装的任何其他软件和组件,以及构建应用程序所需的软件和组件。

     

http://msdn.microsoft.com/en-us/library/bb399135.aspx#software

您甚至可以使用构建服务器的现有许可证,因此如果您拥有MSDN订阅,则不会产生额外费用:

  

在构建服务器上使用Visual Studio

     

如果您有一个或多个   使用MSDN,Visual Studio的Visual Studio Ultimate的许可用户   使用MSDN的高级版,或带有MSDN的Visual Studio Professional,然后是您   也可以将Visual Studio软件安装为Team Foundation的一部分   Server 2013构建服务。这样,您就不需要购买了   Visual Studio许可证涵盖了Visual Studio的运行   为其操作启动构建的每个人构建服务器。

     

http://www.microsoft.com/en-us/download/details.aspx?id=13350

您的老板是否有特殊原因不希望安装Visual Studio?

关于敏捷测试运行器,它是Visual Studio 2012附带的改进测试运行器,它是旧的MsTest运行器的替代品,并将取代旧的MsTest运行器,用于老跑步者的最后几个功能仍然需要。虽然MsTest跑步者仍然可以使用,但某些功能将不会像使用和覆盖一样容易(例如代码覆盖率收集)。其他测试框架可扩展性选项也需要Agile测试运行器,包括XUnit .NET,NUnit,以及Javascript单元测试支持(使用Chutzpah)。

需要安装Visual Studio的其他功能包括:

  • 代码分析
  • 代码覆盖率
  • MsDeploy / WebDeploy
  • SQL Server数据工具
  • 和其他人。

作为获得测试运行者的替代方法,您可以尝试将TFS Test Controller and Agent安装到服务器(您不需要配置它们),测试代理将安装许多测试相关功能而无需实际安装Visual Studio Shell。

答案 1 :(得分:-5)

如果未在构建服务器上安装Visual Studio,则表示您违反了与Microsoft的许可协议。虽然Microsoft本身可能在内部不在其构建服务器上安装Visual Studio的情况下构建,但这种情况肯定不会正式支持。

无需安装Visual Studio即可构建未定义的行为并危及构建的完整性。我建议在这些尝试中保持清醒,直到微软正式支持这种情况。

微软强烈建议不要在没有安装Visual Studio的情况下进行构建,因为我们在2年前被问及金牌合作伙伴,因为它没有以任何方式正式支持,并且没有涵盖该方案的许可证模型。

相关问题