【问题标题】:What is required for doing Unit Tests on a Build Server?在构建服务器上进行单元测试需要什么?
【发布时间】:2014-02-16 04:24:19
【问题描述】:

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

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

首先,我在使用 AgileRunner 或 VS2013 附带的东西时遇到了构建模板的问题。我将其更改为 MSTest。这是正确的改变吗?有没有我可以在构建服务器上安装的只有没有 Visual Studio 的 MSTest 安装程序?

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

【问题讨论】:

    标签: tfs mstest


    【解决方案1】:

    只需在构建服务器上安装 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 许可用户 Premium 与 MSDN,或 Visual Studio Professional 与 MSDN,然后您 也可以将 Visual Studio 软件作为 Team Foundation 的一部分安装 Server 2013 构建服务。这样,您无需购买 Visual Studio 许可证,涵盖在 为其操作启动构建的每个人构建服务器。

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

    你老板不想安装 Visual Studio 有什么具体原因吗?

    关于 Agile Test Runner,它是 Visual Studio 2012 附带的改进的测试运行器,它是旧的 MsTest 运行器的替代品,并将替换旧的 MsTest 运行器,以获得旧运行器的最后几个功能仍然需要。尽管 MsTest 运行器仍然可以工作,但某些功能不会那么容易使用和配置(例如代码覆盖率收集)。其他测试框架可扩展性选项也需要敏捷测试运行程序,包括 XUnit .NET、NUnit,以及 Javascript 单元测试支持(使用 Chutzpah)。

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

    • 代码分析
    • 代码覆盖率
    • MsDeploy / WebDeploy
    • SQL Server 数据工具
    • 等。

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

    【讨论】:

    • 感谢您提供非常详细的答案和参考资料。
    • 感谢您的回答。我们没有许可证允许我们在构建服务器上安装完整的 VS,但安装测试控制器和代理运行良好。
    • 安装测试代理获取 VS 测试运行器。使用Visual Studio 2013 Shell,无需在Build Server中安装完整的VS。
    【解决方案2】:

    未在您的构建服务器上安装 Visual Studio,您违反了与 Microsoft 的许可协议。尽管 Microsoft 自己可能会在内部构建服务器上不安装 Visual Studio 的情况下构建,但这种情况绝对不受官方支持。

    在不安装 Visual Studio 的情况下进行构建会要求未定义的行为并危及构建的完整性。我建议在 Microsoft 正式支持此方案之前不要进行这些尝试。

    Microsoft 强烈建议在 2 年前作为金牌合作伙伴询问时不要在未安装 Visual Studio 的情况下进行构建,因为它不受任何官方支持,并且没有涵盖该方案的许可模型。

    【讨论】:

    • 真的吗?微软从何时何地推荐甚至略微安装Visual Studio来构建?他们有一个致力于建设的整个项目,并方便地将其命名为MSBuild。事实上,MSBuild 是 Visual Studio 使用的构建引擎(它本身就是一个独立的应用程序)。
    猜你喜欢
    • 2019-05-15
    • 2011-10-09
    • 2016-12-14
    • 2021-11-10
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2021-03-28
    • 1970-01-01
    相关资源
    最近更新 更多