Finalement, le voici :
1 <?xml version="1.0"?>
2
3 <project name="projectName" default="deploy" basedir=".">
4
5 <!-- Naming -->
6 <property name="Name" value="projectName"/>
7 <property name="version" value="1.0"/>
8 <property name="example.name" value="${Name}"/>
9
10 <!-- Libraries to include -->
11 <property name="seam.ui.lib" value="yes"/>
12 <property name="seam.debug.lib" value="yes"/>
13 <property name="facelets.lib" value="yes"/>
14 <property name="richfaces.lib" value="yes"/>
15 <property name="src.test.dir" value="test"/>
16 <property name="test-report.dir"
17 value="${basedir}/test-output"/>
18 <property name="report.dir"
19 value="${basedir}/test-report"/>
20 <property name="coverage.dir"
21 value="${basedir}/test-build/coverage"/>
22
23 <!-- Datasource -->
24 <property name="example.ds" value="projectName-h2-ds.xml"/>
25
26 <import
27 file="${basedir}/thirdparty/jboss-seam/examples/build.xml"/>
28
29 <target name="instrument" depends="buildtest,getemma">
30 <taskdef resource="emma_ant.properties"
31 classpathref="runtime.emma.path"/>
32 <mkdir dir="${coverage.dir}/${Name}"/>
33 <emma>
34 <instr instrpath="${test.dir}"
35 mode="overwrite"
36 metadatafile="${coverage.dir}/coverage.ec">
37 <!-- Exclude packages we don't want coverage for -->
38 <filter excludes="**.test.*"/>
39 </instr>
40 </emma>
41 </target>
42
43 <target name="coveragereport" depends="getemma"
44 description="Create the coverage report">
45 <taskdef resource="emma_ant.properties"
46 classpathref="runtime.emma.path"/>
47 <emma>
48 <report depth="method">
49 <sourcepath>
50 <path location="${src.java.dir}"/>
51 </sourcepath>
52 <infileset dir="${coverage.dir}"
53 includes="coverage.ec"/>
54 <html outfile="${report.dir}/coverage.html"/>
55 </report>
56 </emma>
57 <echo>Code coverage report for ${Name} classes
58 available at ${report.dir}/coverage.html</echo>
59 </target>
60
61 <target name="test-coverage"
62 depends="instrument, test, coveragereport"
63 description="Run unit tests with coverage"/>
64 </project>
65
Les cibles test-coverage, instrument et coveragereport ont été inspirées de celles disponibles dans le fichier build.xml à la racine de Seam.
Les propriétés ont été modifiées pour générer les reports dans le répertoire du projet.
Aucun commentaire:
Enregistrer un commentaire