測試應該全部執行完畢,而不是遇到未被滿足的錯誤就放棄測試過程。測試將形成結果,成功的測試,失敗的測試,失敗測試的細節。最后的結果將通過某種方式通知給相應的人員,要求他們修改設計或測試(如果是測試本身的問題的話)。
集成測試是證明構建成功的關鍵因素。和構建一樣,集成測試也應該是自動化的。
日構建的基本工具
日構建的工具有很多,但是最基礎、最廣泛的工具是Ant。Ant類似于Make,但是加入了跨平臺的特性。在這個目標的驅動下,Ant摒棄了Make工具的給予Shell的缺點,提供了一種使用XML配置文件的構建方式,并定義了一個統一的微核心和強大的擴展機制。這些特點使得Ant很快被人所接受、推廣。目前,Ant的最新版本是1.6.0。
<project name="MyProject" default="dist" basedir=".">
<description>
simple example build file
</description>
<!-- set global properties for this build -->
<property name="src" location="src"/>
<property name="build" location="build"/>
<property name="dist" location="dist"/>
<target name="init">
<!-- Create the time stamp -->
<tstamp/>
<!-- Create the build directory structure used by compile -->
<mkdir dir="${build}"/>
</target>
<target name="compile" depends="init"
description="compile the source " >
<!-- Compile the java code from ${src} into ${build} -->
<javac srcdir="${src}" destdir="${build}"/>
</target>
<target name="dist" depends="compile"
description="generate the distribution" >
<!-- Create the distribution directory -->
<mkdir dir="${dist}/lib"/>
<!-- Put everything in ${build} into the MyProject-${DSTAMP}.jar file -->
<jar jarfile="${dist}/lib/MyProject-${DSTAMP}.jar" basedir="${build}"/>
</target>
<target name="clean" description="clean up" >
<!-- Delete the ${build} and ${dist} directory trees -->
<delete dir="${build}"/>
<delete dir="${dist}"/>
</target>
</project>
以上是一個簡單,但已經可以完全說明Ant工作流程的例子,來源于Ant的手冊。在這個例子中,先定義了項目的基本信息和構建過程中所需要使用到的屬性(1),然后初始化環境(2)(創建時戳和目標目錄),在3和4中,對項目進行編譯和打包,在5處,提供了清除項目輸出的途徑。
在Ant中,最關鍵的四個概念就是項目(Project)、目標(Target)、任務(Task)和屬性(Property)。這四個概念的定義和調度、配置文件的處理構成了Ant的核心。而具體的任務則作為擴展機制。這種微核心的處理思路在很多成功的軟件項目中采用過。
本文并沒有打算對Ant進行全面的介紹,因此,如果你打算在組織中引入日構建,那么,學會使用Ant是必須的。目前很多的IDE環境都提供了對Ant的支持(例如Eclipse),所以使用Ant是很方便的。
原則上,光有Ant就已經可以完成一個日構建過程了,但是還有一些軟件提供了更好的封裝,使得持續集成變得更加的簡單。典型的兩個工具是AntHill和CruiseControl前者是一個商業軟件,提供了很多優秀的日構建實踐。使用起來也很簡單。后者是鼎鼎大名的Martin Folwer所在的ThoughtWorks公司開發的,可以免費使用。
文章來源于領測軟件測試網 http://www.kjueaiud.com/