• <ruby id="5koa6"></ruby>
    <ruby id="5koa6"><option id="5koa6"><thead id="5koa6"></thead></option></ruby>

    <progress id="5koa6"></progress>

  • <strong id="5koa6"></strong>
    • 軟件測試技術
    • 軟件測試博客
    • 軟件測試視頻
    • 開源軟件測試技術
    • 軟件測試論壇
    • 軟件測試沙龍
    • 軟件測試資料下載
    • 軟件測試雜志
    • 軟件測試人才招聘
      暫時沒有公告

    字號: | 推薦給好友 上一篇 | 下一篇

    軟件質量之路(2):日構建

    發布: 2009-11-26 08:51 | 作者: 不詳 | 來源: 領測軟件測試網采編 | 查看: 9次 | 進入軟件測試論壇討論

    領測軟件測試網

      simple example build file

      description="compile the source " >

      description="generate the distribution" >

      以上是一個簡單,但已經可以完全說明Ant工作流程的例子,來源于Ant的手冊。在這個例子中,先定義了項目的基本信息和構建過程中所需要使用到的屬性(1),然后初始化環境(2)(創建時戳和目標目錄),在3和4中,對項目進行編譯和打包,在5處,提供了清除項目輸出的途徑。

      在Ant中,最關鍵的四個概念就是項目(Project)、目標(Target)、任務(Task)和屬性(Property)。這四個概念的定義和調度、配置文件的處理構成了Ant的核心。而具體的任務則作為擴展機制。這種微核心的處理思路在很多成功的軟件項目中采用過。

      本文并沒有打算對Ant進行全面的介紹,因此,如果你打算在組織中引入日構建,那么,學會使用Ant是必須的。目前很多的IDE環境都提供了對Ant的支持(例如Eclipse),所以使用Ant是很方便的。

      原則上,光有Ant就已經可以完成一個日構建過程了,但是還有一些軟件提供了更好的封裝,使得持續集成變得更加的簡單。典型的兩個工具是AntHill(http://www.urbancode.com/projects/anthill/default.jsp)和CruiseControl(http://cruisecontrol.sourceforge.net/)。前者是一個商業軟件,提供了很多優秀的日構建實踐。使用起來也很簡單。后者是鼎鼎大名的Martin Folwer所在的ThoughtWorks公司開發的,可以免費使用。

      另一個值得關注的軟件是Apcache組織下的Maven項目(http://maven.apache.org/)。這個項目還很年輕,目前才到1.0的發布版。Maven給自己的定位是項目管理軟件,使用項目對象模型(POM)來描述一個項目,進一步的簡化構建過程,并統一構建過程所出產的工件。Maven的另一個目標是通過一種實際的工具,來推廣優秀的實踐。例如開發目錄樹的組織。

      日構建的代價

      雖然日構建有諸多的好處,但是要使用日構建并不是一帆風順的。最大的問題是如何引入日構建的三項基本實踐。前兩項相對簡單,最難的是建立自動化測試。關于這部分的說明請參考測試驅動開發的相關部分。

      日構建擴展任務

      日構建的核心任務是編譯、構建、執行測試和發布。除了這些任務之外,還可以微日構建添加擴展任務。

      生成文檔。生成文檔有很多的方法,其中最關鍵的是生成API文檔。JavaDoc的概念減弱了傳統軟件開發中文檔的重要性,而把大量的文檔嵌入到了代碼層面中。除了標準的JavaDoc文檔之外,還可以利用第三方的工具生成自定義的文檔,例如to-do列表文檔。XDoclet就是其中的一個工具。

      預編譯。不少的應用引入了預編譯。典型的如AspectJ,作為一個AOP工具,AspectJ的作用是使用特定的代碼生成器生成AOP的Java代碼,然后再進行編譯。將預編譯的工作納入到構建過程,可以簡化開發的工作量。典型的還包括一些ORM工具。

      代碼分析。代碼分析是軟件度量的重要工作。代碼分析可以為管理人員提供一個判斷代碼質量依據(不要把它作為唯一的標準)。代碼分析是形式化的,因此可以制作成軟件,集成到構建過程中來。例如,判斷代碼是否符合編碼規范,文檔和代碼的比率,包和類涉及的合理性。

      測試覆蓋分析。測試覆蓋分析作為輔助測試的手段是非常重要的。測試代碼的復審,最關鍵的評價測試是否足夠(相對),單靠人工完成這項工作太勉強了。所以應該令其自動化,并成為構建過程的一部分。

      問題跟蹤。測試過程中出現的問題應該被納入到一個問題跟蹤系統中,可以通過和問題跟蹤系統接口來設計自動化的任務。

      歸檔和備份。這是很基本,但也是很重要的功能。每天產生的工件應當進行妥當的歸檔、備份。

      進一步了解

      試圖在短短的一篇文章中完整介紹日構建技術是很難的,從DW的網站上,你可以找到更多管理日構建工具的相關內容。

      關于作者

      林星,致力于研究敏捷理論和優秀的軟件設計思想,并將之應用于國內的軟件組織?梢酝ㄟ^ iamlinx@21cn.com 和他聯系,也可以通過訪問 http://www-900.ibm.com/developerWorks/cn/linux/software_engineering/l-frmwk/www.qca.cn 和 http://www-900.ibm.com/developerWorks/cn/linux/software_engineering/l-frmwk/www.aglichina.org 來獲得更多的信息。

    文章來源于領測軟件測試網 http://www.kjueaiud.com/

    44/4<1234

    關于領測軟件測試網 | 領測軟件測試網合作伙伴 | 廣告服務 | 投稿指南 | 聯系我們 | 網站地圖 | 友情鏈接
    版權所有(C) 2003-2010 TestAge(領測軟件測試網)|領測國際科技(北京)有限公司|軟件測試工程師培訓網 All Rights Reserved
    北京市海淀區中關村南大街9號北京理工科技大廈1402室 京ICP備10010545號-5
    技術支持和業務聯系:info@testage.com.cn 電話:010-51297073

    軟件測試 | 領測國際ISTQBISTQB官網TMMiTMMi認證國際軟件測試工程師認證領測軟件測試網

    老湿亚洲永久精品ww47香蕉图片_日韩欧美中文字幕北美法律_国产AV永久无码天堂影院_久久婷婷综合色丁香五月

  • <ruby id="5koa6"></ruby>
    <ruby id="5koa6"><option id="5koa6"><thead id="5koa6"></thead></option></ruby>

    <progress id="5koa6"></progress>

  • <strong id="5koa6"></strong>