ant+testng+reportNG配置
<?xml version="1.0" encoding="UTF-8"?>
<project basedir="." default="testoutput" name="automation test">
<!--默认使用testoutput任务-->
<property name="base.dir" value="${basedir}"/>
<!--项目根目录-->
<property name="testng.output.dir" value="${base.dir}/result"/>
<!--配置结果输出地址-->
<property name="lib.dir" value="${base.dir}/libs"/>
<!--设置其他jar包目录-->
<property name="testng.file" value="${base.dir}/testng.xml"/>
<!--调用的testng用例执行xml文件,这里是文件名-->
<property name="testdir" location="bin"/>
<!--设置编译的2进制文件目录-->
<taskdef resource="testngtasks" classpath="${lib.dir}/testng-6.8.5.jar"/>
<!--导入testng的jar包-->
<target name="clean">
<!--清除之前的2进制文件-->
<delete dir="${testdir}"/>
</target>
<target name="compile" depends="clean">
<mkdir dir="${testdir}"/>
<!--新建2进制文件存放目录-->
<mkdir dir="result"/>
<!--新建结果导出目录-->
<javac srcdir="${base.dir}/src" destdir="${testdir}" encoding="UTF-8" classpathref="classes" includeantruntime="false" debug="on" debuglevel="lines,vars,source">
</javac>
</target>
<!--编译java程序-->
<path id="classes">
<!--设置jar包相关-->
<fileset dir="${lib.dir}" includes="*.jar"/>
<pathelement location="${testdir}"/>
<pathelement location="${base.dir}/src"/>
</path>
<target name="runtest" depends="compile">
<!--运行testng文件-->
<!-- 在target里面新建一个testng标签,里面需要设置的属性有:outputdir – 测试结果输出目录;classpathref – 那些自动化测试代码的目标路径,通常就是编译完成以后的那个目标路径,例如xxx/bin;delegateCommandSystemProperties – 接受传递命令行参数作为系统变量,这个设置为true可以在调用Ant的时候通过 -Dfoo=value 把参数传递给TestNG;里面还有一个xmlfileset节点,这个节点就是指定testng.xml文件的目录以及具体文件。 -->
<testng outputdir="${base.dir}/test-output" classpathref="classes" delegateCommandSystemProperties="true">
<!--解决eclipse console编译乱码 -->
<jvmarg value="-Dfile.encoding=UTF-8" />
<!--在指定路径下,找文件名由testng.file -->
<xmlfileset dir="${base.dir}" includes="debug.xml"/>
</testng>
<!--定义的testng.xml文件-->
</target>
<tstamp>
<format property="CURTIME" pattern="yyyyMMdd_HHmmss" locale="us"/>
<!--设置当前时间-->
</tstamp>
<path id="test.classpath">
<fileset dir="${lib.dir}" includes="*.jar"/>
</path>
<target name="testoutput" depends="runtest">
<xslt in="test-output/testng-results.xml" style="test-output/testng-results.xsl" out="result/${CURTIME}/index.html">
<param name="testNgXslt.outputDir" expression="${base.dir}/result/${CURTIME}/"/>
<param name="testNgXslt.showRuntimeTotals" expression="true"/>
<param name="testNgXslt.sortTestCaseLinks" expression="true"/>
<param name="testNgXslt.testDetailsFilter" expression="FAIL,SKIP,PASS,CONF,BY_CLASS"/>
<classpath refid="test.classpath"/>
</xslt>
<copy todir="${base.dir}/result/report">
<fileset dir="result/${CURTIME}">
<include name="**" />
</fileset>
</copy>
</target>
</project>