免费注册 查看新帖 |

Chinaunix

  平台 论坛 博客 文库
最近访问板块 发新帖
查看: 1391 | 回复: 0
打印 上一主题 下一主题

第 20 章 持续集成 [复制链接]

论坛徽章:
0
跳转到指定楼层
1 [收藏(0)] [报告]
发表于 2008-04-07 15:42 |只看该作者 |倒序浏览
第 20 章 持续集成
      
持续集成
是一种软件开发实践,团队成员频繁地合并他们的工作,通常每个人至少每天合并,导致每天多次合并。每次合并由一个自动化的构建系统(包括测试)校验,以尽快发觉合并错误。很多团队发现这种方式显著地减少了合并问题,并且允许团队更快地开发内聚的软件。
   
  --Martin Fowler
    本章提供持续集成的概述,总结技术及其在PHPUnit下的应用。
  
CruiseControl
      持续集成要求一个完全自动化和可再生的构建系统,包括测试且每天运行很多次。这允许每个开发者每天合并从而减少合并问题。要达此目的,可通过设置一个
cronjob
每隔一段时间重新校验项目的
源代码仓库
、运行测试并发布结果,仍然可能需要一个更舒适的解决方案。
   
      这就是像
CruiseControl
这样的用于持续构建过程的框架出现的原因。它包括但并不限于用于email通知的插件、
Apache Ant
和多种源代码控制工具。提供了web界面用于察看当前和以前构建(版本)的详细信息。
   
      下面的例子假设CruiseControl已经安装于/usr/local/cruisecontrol。
   
  • cd /usr/local/cruisecontrol
  • mkdir -p projects/BankAccount/build/logs
  • cd projects/BankAccount
  • svn co svn://svn.phpunit.de/phpunit/phpunit/branches/release/3.2/PHPUnit/Samples/BankAccount source
  • 编辑文件build.xml。范例 20.1: projects/BankAccount/build.xml

      
       
      


      
       
      


  • cd /usr/local/cruisecontrol
  • 编辑文件config.xml。范例 20.2: config.xml
      
       
       
       
          
       
       
          
       
       
          
       
       
          
       
       
          
       
       
          
          
            
          
       
      
  • ./cruisecontrol.sh
  • 在你的浏览器中打开http://localhost:8080/。Apache Maven
          
    Apache Maven
    是一个软件项目管理和综合的工具。基于概念项目对象模型(POM),Apache Maven能够从信息的中枢位置管理项目的构建、报告和文档。
       
          PHPUnit的XML日志设备(见
    “XML格式”一节
    )产生的单一XML日志文件在能被Apache Maven的
    surefire插件
    处理以前,需要被分割成单独的XML日志文件,分别对应每个测试套件。该插件用于在构建周期的测试阶段执行应用的单元测试。
    范例 20.4
    显示一个实现分割的XSLT样式表。
    范例 20.3
    显示一个pom.xml配置文件的例子。
       
    范例 20.3: pom.xml
      4.0.0
      
      
        2.0.7
          
      
      
      
       
          
          
            
              org.apache.ant
              ant-trax
              1.7.0
            
            
              net.sf.saxon
              saxon
              8.7
            
          
          org.apache.maven.plugins
          maven-antrun-plugin
          1.2-SNAPSHOT
          
            
              codecoverage
              pre-site
             
                run
             
             
                
                  
                  
                  
                  
                  
                  
                  
                  
                   
                  
                  
                   
                   
                  
                
             
            
          
          
       
      
      
       
          
            org.apache.maven.plugins
            maven-surefire-report-plugin
            2.4-SNAPSHOT
            
             
                
                  report-only
                
             
            
          
       
      
    范例 20.4: phpunit_to_surefire.xsl
      
      .
      
       
      
      
       
          
          
            
          
       
       
      
                   
                   
                   

    本文来自ChinaUnix博客,如果查看原文请点:http://blog.chinaunix.net/u1/57558/showart_520177.html
  • 您需要登录后才可以回帖 登录 | 注册

    本版积分规则 发表回复

      

    北京盛拓优讯信息技术有限公司. 版权所有 京ICP备16024965号-6 北京市公安局海淀分局网监中心备案编号:11010802020122 niuxiaotong@pcpop.com 17352615567
    未成年举报专区
    中国互联网协会会员  联系我们:huangweiwei@itpub.net
    感谢所有关心和支持过ChinaUnix的朋友们 转载本站内容请注明原作者名及出处

    清除 Cookies - ChinaUnix - Archiver - WAP - TOP