用Ant进行单元测试并生成测试报告
关键Ant的build文件如下(已加上比较详细的说明)
下面以后也会加上测试报告的贴图的。
1<?xml version="1.0" encoding="UTF-8"?>
2<project basedir="." default="main" name="excute TestCase and build test report">
3 <!-- 测试报告存放目录 -->
4 <property name="build.reports.dir" value="${basedir}/report" />
5 <target name="main">
6 <!-- 删除测试报告数据,重新生成 -->
7 <delete>
8 <fileset dir="${basedir}/report">
9 <include name="*.*" />
10 </fileset>
11 </delete>
12 <junit fork="yes" printsummary="true">
13 <!-- 生成的class目录以及执行TestCase所依赖的库
14 无论是用<test>还是<batchtest>都要这个配置 -->
15 <classpath location="${basedir}/bin" />
16 <!-- 生成报告数据的格式,可能多个,支持xml/brief/plain -->
17 <formatter type="xml" />
18 <formatter type="brief" usefile="false" />
19 <!-- 可以用<test>也可以用<batchtest>,但两种的设置有一些区别
20 以下<test>和<batchtest>三种形式用某一种就可以的 -->
21 <!-- name指定Class的名称,如CatTest或com.unmi.CatTest -->
22 <test name="CatTest" todir="${build.reports.dir}" />
23 <!-- 注意其中<fileset>的dir属性及<include>的name属性指代的意义 -->
24 <batchtest todir="${build.reports.dir}">
25 <!-- dir属性指定TestCase类的源代码的路径 -->
26 <fileset dir="${basedir}/src">
27 <!-- name属性指定TestCase源文件规则 -->
28 <include name="**/*Test.java" />
29 </fileset>
30 </batchtest>
31 <!-- 上面的<batchtest>还可以写成如下形式,<fileset>按指定为class
32 注意其中<fileset>的dir属性及<include>的name属性指代的意义 -->
33 <batchtest todir="${build.reports.dir}">
34 <!-- dir属性指定TestCase类的路径 -->
35 <fileset dir="${basedir}/bin">
36 <!-- name属性指定TestCase类文件规则 -->
37 <include name="**/*Test.class" />
38 </fileset>
39 </batchtest>
40 </junit>
41 <!-- 用执行以上TestCase生成的报告数据生成测试报告 -->
42 <junitreport todir="${build.reports.dir}">
43 <fileset dir="${build.reports.dir}">
44 <include name="TEST-*.xml" />
45 </fileset>
46 <!-- 指定生成测试报告的格式frames/noframes,和报告存放目录 -->
47 <report format="frames" todir="${build.reports.dir}" />
48 </junitreport>
49 </target>
50</project>