本文将以代码方式展示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期有相关文章介绍,这里我就不多说了。