Vincent.Chan‘s Blog

          常用鏈接

          統計

          積分與排名

          網站

          最新評論

          Ant+junit的測試自動化

          隨著Refactoring技術 和XP軟件工程技術的廣泛推廣,單元測試的作用在軟件工程中變得越來越重要,而一個簡明易學、適用廣泛、高效穩定的單元測試框架則對成功的實施單元測試有 著至關重要的作用。在java編程語句環境里,Junit Framework是一個已經被多數java程序員采用和實證的優秀的測試框架,但是多數沒有嘗試Junit Framework的程序員在學習如何Junit Framework來編寫適應自己開發項目的單元測試時,依然覺得有一定的難度,這可能是因為Junit隨框架代碼和實用工具附帶的用戶指南和文檔的著重 點在于解釋單元測試框架的設計方法以及簡單的類使用說明,而對在特定的測試框架(Junit)下如何實施單元測試,如何在項目開發的過程中更新和維護已經 存在的單元測試代碼沒有詳細的解釋。因此本文檔就兩個著重點對Junit所附帶的文檔進行進一步的補充和說明,使Junit能被更多的開發團隊采用,讓單 元測試乃至Refactoring、XP技術更好在更多的開發團隊中推廣。

             本文將以代碼方式展示ant+junit進行整體測試的方法,并生成測試報告,發送給開發人員的信箱

              將junit.jar放在ant_home/lib下,然后編寫build.xml文件  

          build.xml

          <?xml version="1.0" encoding="gb2312"?>
          <!--測試文件,并將測試報告發送到開發人員指定的信箱
           by biggie(biggie@hns-soft.com)-->
          <project name="test" default="build" basedir=".">
           <property environment="env"/>
           <property name="j2ee" value="env.j2ee_home"/>
           <property name="base.dir" value="." />
          <!--定義測試源文件-->
           <property name="src" value="${base.dir}/test" />
          <!--定義輸出位置-->
           <property name="classes" value="${base.dir}/defaultroot/WEB-INF/classes"/>
          <!--定義lib-->
           <property name="lib" value="${base.dir}/lib"/>
          <!--定義classpath-->
           <path id="appclasspath">
            <pathelement path="${java.class.path}"/>
            <fileset dir="${base.dir}/defaultroot/WEB-INF/lib">
             <include name="*.jar"/>
            </fileset>
            <pathelement location="${base.dir}/defaultroot/WEB-INF/classes"/>
            <pathelement location="D:/j2sdkee1.3.1/lib/j2ee.jar"/>
           </path>
             <!--initialization-->
           <target name="init">
                  <tstamp/>
                  <mkdir dir="${classes}"/>
              </target>
              <target name="compiletest" depends="init">
                  <!--javac-->
                  <javac srcdir="${src}" destdir="${classes}" debug="off">
            <classpath refid="appclasspath"/>
                      <include name="**/*.java" />
                  </javac>
              </target>
              <target name="build" depends="compiletest,run">
             <tstamp/>
              <exec executable="${base.dir}/email.bat" >
            </exec>
              </target>
              <target name="run">
             <junit>
            <classpath refid="appclasspath"/>
            <classpath>
             <pathelement location="${base.dir}/defaultroot/WEB-INF/classes"/>
            </classpath>
            <formatter type="xml"/>
            <test name="test.AllTests" haltonfailure="no" outfile="result"/>
              </junit>
             <junitreport todir="./report">
            <fileset dir=".">
             <include name="result.xml"/>
            </fileset>
            <report format="noframes" todir="./report"/>
                   </junitreport>
              </target>
              </project>

          生成測試報告后,調用emai.bat文件,執行一發送郵件操作。為實現群發,所以我采用的是別外寫一應用程序發送郵件,當然您也可以用ant直接發送郵件。程序員第7期有相關文章介紹,這里我就不多說了。

          本文提供的是一個思路,你還可以實現更強大的功能,分布測試整體測試等等.

          posted on 2006-02-15 00:03 Vincent.Chen 閱讀(150) 評論(0)  編輯  收藏 所屬分類: Java

          主站蜘蛛池模板: 古交市| 兴城市| 沙坪坝区| 遂宁市| 治县。| 杭州市| 饶阳县| 郎溪县| 深圳市| 新泰市| 宜君县| 贺兰县| 兰州市| 府谷县| 兴义市| 洪江市| 莱芜市| 封丘县| 绥中县| 那曲县| 安化县| 五大连池市| 东莞市| 闸北区| 南川市| 襄垣县| 石首市| 白朗县| 东丽区| 梁山县| 宾阳县| 会泽县| 离岛区| 顺义区| 铜陵市| 于都县| 兰西县| 合肥市| 莲花县| 方山县| 鄂托克旗|