ようこそ、皆さん

          開心幸福生活每一天。。。

          JPLT2が合格しましたが、會話と聴力はまだまだです。これからも、がんばれ?。?!

          導航

          <2009年3月>
          22232425262728
          1234567
          891011121314
          15161718192021
          22232425262728
          2930311234

          公告

          JPLT2が合格しましたが、會話と聴力はまだまだです。これからも、がんばれ?。。?

          我參與的團隊

          隨筆檔案(22)

          文章分類(1)

          文章檔案(1)

          相冊

          ほかの人のBLOG

          積分與排名

          最新評論

          用Ant編譯、junit測試、生成測試報告、最終自動發mail

          紅色部分是自己所寫,黑色部分是參照別人的。。。
          測試通過的版本如下:
          Eclipse:3.3.2
          jdk:1.6
          junit:3.8
          ant:1.7(1.7之前的版本好像還不提供mail功能。。。)

          <!-- JUnit build script using ant 1.7 -->
          <project name="JunitTestProject" default="mail" basedir=".">
           <property name="app.name" value="JunitTestProject" />
           <property name="build.dir" value="bin" />

           <!-- ====================" path  define  " ================================ -->
           <path id="cobertura.classpath">
            <fileset dir="lib/coberture">
             <include name="cobertura.jar" />
             <include name="*.jar" />
            </fileset>
           </path>
           <!-- ====================" cobertura task define  " Target ================================ -->
           <taskdef classpathref="cobertura.classpath" resource="tasks.properties" />

           <!-- ==================== "clean " Target ================================ -->
           <target name="clean">
            <available property="junit.present" classname="junit.framework.TestCase" />
            <delete dir="${build.dir}" quiet="true" />
            <delete file="report" quiet="true" />
           </target>

           <!-- ==================== "copy xml resource " Target ================================ -->
           <target name="copyxml" depends="clean">
            <copy todir="${build.dir}/testcases">
             <fileset dir="WEB-INF" />
            </copy>
           </target>

           <!-- ==================== "compile  src" Target ================================ -->
           <target name="compile" depends="copyxml">
            <mkdir dir="${build.dir}" />
            <javac srcdir="src" destdir="${build.dir}" debug="yes">
             <classpath>
              <fileset dir="lib" casesensitive="yes">
               <include name="**/*.jar" />
              </fileset>
             </classpath>
             <include name="**/*.java" />
            </javac>
            <javac srcdir="WEB-INF" destdir="${build.dir}">
             <classpath>
              <fileset dir="lib" casesensitive="yes">
               <include name="**/*.jar" />
              </fileset>
             </classpath>
             <include name="*.jsp" />
            </javac>
           </target>

           <!-- ==================== jar" Target ================================ -->
           <target name="jar" depends="compile">
            <mkdir dir="dist/lib" />
            <jar jarfile="dist/lib/${app.name}.jar" basedir="${build.dir}" includes="com/**" />
           </target>

           <!-- ==================== compile test src" Target ================================ -->
           <target name="compiletests" depends="jar">
            <mkdir dir="${build.dir}/testcases" />
            <javac srcdir="test" destdir="${build.dir}/testcases" >
             <classpath>
              <fileset dir="lib" casesensitive="yes">
               <include name="**/*.jar" />
              </fileset>
              <fileset dir="dist/lib" casesensitive="yes">
               <include name="**/*.jar" />
              </fileset>
             </classpath>
             <include name="**/*.java" />
            </javac>
           </target>

           <!-- ==================== instrumented" Target ================================ -->
           <target name="instrumented" depends="compiletests">
            <cobertura-instrument todir="bin/instrumented-classes">
             <ignore regex="org.apache.log4j.*" />
             <fileset dir="bin">
              <include name="com/**/*.class" />
             </fileset>
            </cobertura-instrument>
           </target>

           <!-- ==================== junit-test" Target ================================ -->
           <target name="runtests" depends="instrumented">
            <mkdir dir="report" />
            <property name="tests" value="*Test" />
            <junit printsummary="yes" haltonerror="yes" haltonfailure="yes" fork="yes">

             <formatter type="plain" usefile="false" />
             <formatter type="xml" />
             <batchtest todir="report">
              <fileset dir="test">
               <include name="**/${tests}.java" />
               <exclude name="**/ConfigTest.java" />
              </fileset>
             </batchtest>
             <!--
              Note the classpath order: instrumented classes are before the
              original (uninstrumented) classes.  This is important.
             -->
             <classpath location="bin/instrumented-classes" />
             <!--
              src classpath
             -->
             <classpath location="bin" />

             <!--
              The instrumented classes reference classes used by the
              Cobertura runtime, so Cobertura and its dependencies
              must be on your classpath.
             -->
             <classpath refid="cobertura.classpath" />
             <!--
              test case class path define
             -->
             <classpath>
              <fileset dir="lib" casesensitive="yes">
               <include name="**/*.jar" />
              </fileset>
              <pathelement location="bin/testcases" />
             </classpath>
            </junit>
           </target>

           <!-- ==================== junit-report" Target ================================ -->
           <target name="report" depends="runtests">
            <mkdir dir="report/html" />
            <junitreport todir="report">
             <fileset dir="report">
              <include name="TEST-*.xml" />
             </fileset>
             <report todir="report/html" />
            </junitreport>
           </target>


           <!-- ==================== "coverage-report" Target ================================ -->
           <target name="coverage-report" depends="report">
            <cobertura-report format="html" destdir="cobertura" >
             <fileset dir="src">
              <include name="**/*.java" />
             </fileset>
            </cobertura-report>
            <echo>The execution of coverage-report is complete. Coverage Reports are available in /${coverage-report}</echo>
           </target>
           
           <!-- ==================== "make file to zip" Target ================================ -->
           <target name="make_data_zip" depends="coverage-report">
            <tstamp>
             <format property="date" pattern="yyyy-MM-dd HH-mm" />
            </tstamp>
            <jar jarfile="dist/lib/cobertura${date}.zip" basedir="cobertura" />
            <jar jarfile="dist/lib/report${date}.zip" basedir="report" excludes="*.xml"/>
           </target>

          <!-- ==================== "mail" Target ================================ -->
           <target name="mail" depends="make_data_zip">
            <!-- <taskdef name="mail" classname="org.apache.tools.ant.taskdefs.optional.mail.MimeMail"/> -->
            <tstamp/>
            <mail messageMimeType="text/html"
                              messageFile="message.txt"
                              tolist="
          bpcjy@hotmail.com"
                              mailhost="mailsvr or mail IPAddress"
                              subject="JUnit Test Results: ${TODAY}"
                              from="
          bpcjy@hotmail.com">
             <fileset dir=".">
              <include name="dist/lib/*.zip"/>
             </fileset>
            </mail>
           </target>

          </project>



          快快樂樂、認認真真生活才是真。

          posted on 2009-03-13 14:32 鮑佩 閱讀(3658) 評論(3)  編輯  收藏 所屬分類: ant

          評論

          # re: 用Ant編譯、junit測試、生成測試報告、最終自動發mail 2009-03-16 12:20 XXXXXXXXXXXX

          狗屎 干嘛學日語  回復  更多評論   

          # re: 用Ant編譯、junit測試、生成測試報告、最終自動發mail 2009-03-17 14:51 anti-cpc

          樓上正白癡。 別人學日語干你X事,死糞糞  回復  更多評論   

          # re: 用Ant編譯、junit測試、生成測試報告、最終自動發mail 2015-02-03 15:24 謝霆鋒

          關你籃子事  回復  更多評論   

          平平淡淡,認認真真生活才是真。
          主站蜘蛛池模板: 开鲁县| 巨野县| 阳曲县| 泰兴市| 乌兰浩特市| 武义县| 岚皋县| 石河子市| 汨罗市| 枣强县| 西贡区| 连山| 米泉市| 汾阳市| 新昌县| 高邑县| 梨树县| 玉树县| 陆川县| 广昌县| 沈阳市| 德格县| 丰都县| 徐汇区| 阿克| 巨野县| 阜新| 瑞安市| 毕节市| 马山县| 乌恰县| 衡阳市| 青铜峡市| 阜阳市| 济南市| 公安县| 化州市| 陆丰市| 孟州市| 民勤县| 水富县|