【问题标题】:Requirements for TFS automated build and publishTFS 自动构建和发布的要求
【发布时间】:2012-01-10 07:33:34
【问题描述】:

我是 TFS 新手,我们正在尝试为我们的构建自动化测试/构建/部署过程。

我遇到的问题是,当我尝试使用 MSBuild Arguments 使用自动部署(针对网页)开始构建时,它抱怨说它没有必要的 DLL,到目前为止我已经发现他们使用 Visual Studio Premium 或 Ultimate 安装,但随后其他人抱怨不应将 Visual Studio 之类的东西安装在服务器上 =)

TFS 目前也是构建服务器,我想知道这些东西是否有任何已知要求:

  • 自动化 UI 测试
  • 自动部署
  • 自动发布
  • 代码分析

我正在使用 TFS 2010 和 Visual Studio 2010 (Premium)。欢迎任何帮助、cmets 或不同的方法 =)

【问题讨论】:

    标签: tfs build-automation requirements msdeploy automated-deploy


    【解决方案1】:

    我们在我的团队中处理该问题的方式是实际检查将产品构建到源代码控制中所需的所有参考资料。 .NET 框架本身之外的任何东西,以及安装构建控制器/构建代理所获得的任何东西,都会被签入..

    正位:

    • 设置构建代理很简单(只需“安装服务器 2K8R2,安装构建代理,开始构建”)。
    • 不必担心复杂的 SDK 安装以匹配人们的开发箱。参考都是签入源代码控制的确切版本。
    • 您可以获得二进制版本控制,这意味着如果您需要进行维护发布并针对特定 API 的去年版本进行构建,这非常容易。

    负位:

    • 有点膨胀你的源代码管理
    • 在源代码管理中检查二进制文件感觉很奇怪
    • 需要非常警惕检查二进制文件的结构和清洁度,否则很容易失控

    除此之外,就使测试位从您的构建代理中工作而言。可能最简单的方法是安装 test 代理。 VS2010 中的 UI 自动化是“CodedUI 测试”框架。它扩展了普通的 VS 单元测试框架,但需要一些额外的注册才能工作。

    更复杂,但从长远来看超级有用的是设置完整的“Visual Studio 实验室管理”平台。缺点是,要充分利用它,您需要连接一个 System Center Virtual Machine Manager 服务器和至少一个 Hyper-V 主机,并构建一个具有“干净”VM 快照的虚拟机(除了 您正在测试的产品已安装)。一旦一切就绪,您将获得真正流畅的端到端构建-部署-测试体验。您通过构建系统触发产品构建,一旦完成,您的环境将完全恢复干净的状态(不用担心上一个版本的剩余位会破坏您的测试等),产品会发布到这个测试环境,然后它会执行您的测试。

    不确定您是否将 TFS 用于工作项跟踪、测试用例管理、项目规划等等。如果没有,实验室管理的东西可能太繁重而无法处理。更多信息here 如果你有兴趣搞乱那部分。 :)

    【讨论】:

    • 谢谢,我一定会尽快讨论这种方法 =) 你知道代码分析是否也可以通过将所需内容的引用添加到源代码控制来设置?跨度>
    • 补充一点,TFS11 将使在物理机上部署和运行精简(如测试)变得更加容易,等不及了!
    • @Nischo:是的,很确定我们将 FxCop 和 StyleCop 二进制文件检入到参考源代码控制中的类似位置。我确信我们使用规则集来做到这一点,因此不同的项目可以有不同的规则集(不仅仅是标准的 GlobalSuppressions 文件或其他东西)。
    【解决方案2】:

    您的构建服务器需要适当版本的 Visual Studio。例如,如果你想做数据库单元测试,那么构建服务器需要安装 VS Ultimate。

    如果在服务器上安装“客户端”软件存在问题,请使用单独的构建服务器。对于构建服务器来说,安装必要的工具来执行构建是非常有意义的。

    【讨论】:

      猜你喜欢
      • 2018-11-27
      • 2018-07-24
      • 1970-01-01
      • 2018-03-11
      • 2017-09-05
      • 1970-01-01
      • 2014-04-18
      • 2014-08-07
      • 1970-01-01
      相关资源
      最近更新 更多