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

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

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

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

    用Ant和Eclipse有效地提高部署效率

    發布: 2007-6-22 07:38 | 作者: 金發華,陳樟洪  | 來源: ibm  | 查看: 42次 | 進入軟件測試論壇討論

    領測軟件測試網

    下一頁 1 2 3 

       
      本文主要介紹 Ant 在多用戶開發的情況下,如何用 Eclipse,并且根據不同的目標環境編譯不同的部署包。

    文中首先介紹一個場景,給出在開發、編譯、部署過程中遇到的問題;然后介紹如何用 Eclipse 來簡化你的 Ant 開發過程;文章的最后解釋如何通過編寫有效的 Ant 腳本來提高你的工作效率。

      讀者定位為具有 Java 和 Ant 使用經驗的開發人員。

      讀者可以學習到如何使用 Ant 解決一些多用戶開發環境中,根據不同的目標環境編譯成不同部署包的問題。

      工作場景

      現在有一個 web 項目,是多人進行開發的,通過 CVS 來管理。另外該項目還有一些測試人員,他們測試部署在測試服務器上的應用程序,發現 bug 后通過 bug 管理系統通知開發人員,在開發人員修復 bug 并經過本地測試后,由專門的人負責檢出(check out)代碼,編譯打包后部署到測試服務器上。

      該項目的成員小A就是負責檢出代碼、編譯打包,并部署到服務器上的人。除了這個任務之外,他還是該項目的編程人員。在項目進入測試階段后,小A在得到組中別的成員修復了 bug 并且檢入(check in)了代碼的消息后(也有可能是小A自己檢入了代碼),小A首先更新本地的代碼,先在本地做測試,確認修復了 bug 后打成 WAR 包部署到測試服務器上,并通知測試人員已經修復了 bug,讓測試人員繼續進行測試。

      小A的煩惱

      在該項目中,有一些為測試方便開發而寫的代碼和頁面,比如跳過用戶認證,但是在部署到測試機環境的時候,需要刪除這些代碼和頁面;另外作為一個具有靈活性和擴展性的應用程序,又有一些配置文件,配置文件中的值會根據環境的改變而變動。例如,在項目中使用了 Log4j 記錄日志,需要給 Log4j 指定日志文件的保存路徑,本地程序員開發的時候用的是 Windows 系統,給 Log4j 指定的也是 Windows 的文件系統,在測試階段的時候,需要部署到 Linux 系統中,那么日志的保存路徑也需要做相應的改動。部署到測試服務器上的時候,除了 Log4j 需要改之外,還有很多別的配置項目也需要變動,并且分散在各個 package 中。小A的煩惱也隨之而來,每次他在做完本地測之后,就根據測試機的需要逐個找配置文件,更改相應的值,并刪除那些為測試方便寫的代碼和頁面,每天可能根據需要做好幾次這樣的事情,最煩的是他在快做完對測試機環境更改的時候,某開發人員突然通知小A說:“我又改了一點代碼,剛檢入,你再重打一個包吧!,小A又不得不從頭開始做新一輪的檢出代碼、本地測試、更改配置文件、刪除不需要的文件、打包部署的工作。另外小A在測試階段的后期被通知要求除了每次生成一個測試環境的 WAR 包外還必須生成一個在產品環境下的 WAR 包,他做的事情就更多了。

      從上面的場景可以看出,小A的工作效率低而且容易出錯,甚至有可能導致整個項目的工作效率低下。其實可以通過 Ant 來幫助小A快速而且有效地完成這個工作。在 Ant 中,根據目標環境的需要,可以把所有要更改的配置文件的項目集中寫到某個配置文件中。這樣根據不同的目標環境得到不同的配置文件,Ant 在編譯包時根據不同的目標環境切換不同的配置文件即可。比如小A現在碰到的有 3 中環境:開發環境、測試環境以及產品環境,根據這三種環境可以生成三個不同的配置文件:develop_deploy.property、test_deploy. property和product_deploy. property,當小A想生成不同的包時只需在這三個配置文件之間切換就可以了。

      在正式開始編寫腳本之前,我們需要下載安裝相應的軟件。
    • Eclipse:為了使 Ant 的開發更加簡單,我們選擇了 Eclipse3.1 作為開發環境。當然你可以使用任何你喜歡的文本編輯工具來開發你的 Ant。Eclipse 的最新版本可以在 http://eclipse.org/ 上下載。
    • Ant:Ant 是基于 Java 的編譯工具,它就像 C/C++ 中的 make,但是沒有 make 那樣難用。Ant 的最新版本可以在 http://ant.apache.org/bindownload.cgi 上下載。如果你用 Eclipse 來開發 Ant,則不用去單獨下載 Ant,因為在 Eclipse 中已經集成了 Ant。
    • CVS 客戶端(cvs.exe):CVS 可以在 http://www.nongnu.org/cvs/ 上下載

      用 Eclipse3.1 來創建 Ant 腳本

      如果你使用 Eclipse 來編寫 Ant,建議使用 Eclipse 3.1 以后的版本。除了以前 Ant 編輯器提供的語法高亮,提示語法錯誤等功能外,Eclipse3.1 版本增加了許多新的功能。比如:腳本代碼的折疊;快速定位某屬性或者目標(target)段的定義;在同一 builder 文件中重構屬性名和目標名(快捷方式Alt + Shift +R);調試 Ant 腳本等。

      下面我們就來看看 Eclipse 3.1 中對 Ant 的支持
    • 打開“File”-“New”-“Project”-“Simple”-“Project”,點擊“Next”,輸入工程名“Ant”,然后點擊直到“Finish”

    • 在新建的 Ant 工程中,新建 Test.xml,并且拷貝下面的腳本。該段腳本的內容就不做介紹了,我們主要看 Eclipse 提供了哪些功能。注意這時候打開的并不是 Ant 編輯器,將內容拷貝進去之后,關掉打開的“Test.xml”,然后再重新打開它,這樣 Eclipse 就會用 Ant 編輯器打開它,并且也語法高亮了。

      <?xml version="1.0" encoding="UTF-8"?> 
      <project name="Test" default="init" basedir="."> 
      <property name="test" value="test"/> 
      <target name="init"> 
       <echo>${test}</echo> 
      </target> 
      </project> 
      

    • 自動提示和代碼折疊功能。如果是 Ant 內置的命令或者前面已經定義的變量,編輯器會自動提示;編輯器右邊的加/減號可以代碼折疊。如下所示:
      用Ant和Eclipse有效地提高部署效率(圖一)

    • 快速定位目標(target)或者定義變量處。在上圖中,將鼠標移至 default=”init” 中的 init 上之后,按下 ctrl 鍵,鼠標變成手狀,單擊就可以定位到定義該目標的地方

    • 快速重構目標名或者屬性名。選中目標/屬性名,按下 Alt + Shift + R,然后鍵入你要修改后的值,所有引用到的地方都會隨之改動。如下圖所示,選中 init 后,按下快捷鍵,改成 initial:
      用Ant和Eclipse有效地提高部署效率(圖二)

    • 調試 Ant 腳本。在標簽“<target name=..”的左邊設置一斷點,然后在編輯器中右擊,出現的菜單中選“Debug As”-“Ant Build”,出現后的窗口與調試 Java 程序的界面差不多。

      這是調試窗口,這里可以選擇單步跟進、跳出等:

      用Ant和Eclipse有效地提高部署效率(圖三)

      下面是運行時變量窗口?梢钥吹 test 變量的值是“test”:

      用Ant和Eclipse有效地提高部署效率(圖四)

      運行結果窗口:

      用Ant和Eclipse有效地提高部署效率(圖五)
      由此可見,如果使用好 Eclipse Ant 編輯器所提供強大的功能的話能大大提高寫 Ant 腳本的效率。

    延伸閱讀

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


    關于領測軟件測試網 | 領測軟件測試網合作伙伴 | 廣告服務 | 投稿指南 | 聯系我們 | 網站地圖 | 友情鏈接
    版權所有(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>