转的别人的ant+junit的一个例子,在这里备份一下

利用Ant集成Junit自动测试并生成测试报告,可以极大的提高测试的工作效率,其优势只要是测试用例的批量处理功能。前不久在网上看到很多关于Junit测试的文章,欣闻Ant支持Junit的集成,迫不及待的尝试了一番。 
1.         的配置:ant 
本案例采用apache-ant-1.6.5版本,下载ant后需要将Junit3.8.1拷贝到ANT_HOME的lib目录下。Ant在执行过程TestCase过程中除了需要在classpath中可见,还需要在ant中可见,否则会报错。 
2.         目录结构: 
工作目录 
|-src-|—com-|—wallace-|-Calculator.java 
                            |-test-|-TestCalculator.java 
|-lib-|-junit.jar 
|-build 
|-report 
3.         模板:build.xml 
<?xml version="1.0" encoding="utf-8"?> 
<project name="test" default="test" basedir="."> 

       <!--配置基本属性--> 
       <property name="src" value="src"/> 
       <property name="build" value="build"/> 
       <property name="lib" value="lib" /> 
       <property name="dist" value="dist"/> 
       <property name="classpath" location="${build}"/> 
      
       <!--配置测试报告的属性--> 
       <property name="report"   value="report"/> 
       <property name="report.xml" value="${report}/junit/xml"/> 
       <property name="report.html" value="${report}/junit/html"/> 

       <!--配置运行时classpath--> 
       <path id="classpath.run"> 
              <pathelement path="${classpath}"/> 
              <fileset dir="${lib}"> 
                     <include name="*.jar"/> 
              </fileset> 
       </path> 

<!--配置测试时classpath--> 
       <path id="classpath.test"> 
              <path refid="classpath.run"/> 
              <path location="${dist}/lib/test-${DSTAMP}.jar"/> 
       </path> 
      
       <!--任务初始化--> 
       <target name="init" > 
              <tstamp/> 
              <delete dir="${build}"/> 
              <delete dir="${report}"/> 
              <delete dir="${dist}"/> 
              <mkdir dir="${build}"/> 
       </target> 
      
       <!--配置编译任务--> 
       <target name="compile" depends="init"> 
              <javac srcdir="${src}" destdir="${build}"> 
              <classpath refid="classpath.run" /> 
              </javac> 
       </target> 
      
       <!--配置打包任务--> 
       <target name="dist" depends="compile"> 
              <mkdir dir="${dist}/lib"/> 
              <jar jarfile="${dist}/lib/test-${DSTAMP}.jar" basedir="${build}"/> 
       </target> 
      
       <!--配置运行任务--> 
       <target name="run" depends="compile, dist"> 
        <java classname="com.test.TestCalculator"> 
            <classpath> 
                     <path refid="classpath.run"/> 
              </classpath> 
        </java> 
       </target> 
      
       <!--配置JUnit测试,打印测试结果--> 
       <target name="test" depends="compile, dist"> 
              <mkdir dir="${report.xml}"/> 
              <mkdir dir="${report.html}"/> 
              <junit printsummary="yes" haltonfailure="no"> 
                     <classpath refid="classpath.run"/> 
                     <formatter type="xml"/> 
                     <batchtest fork="yes" todir="${report.xml}"> 
                            <fileset dir="${src}" includes="**/Test*.java"/> 
                     </batchtest> 
              </junit> 
              <junitreport todir="${report.html}"> 
                     <fileset dir="${report.xml}"> 
                            <include name="*.xml"/> 
                     </fileset> 
                     <report format="frames" todir="${report.html}"/> 
              </junitreport> 
       </target> 

</project> 

你可能感兴趣的:(JUnit)