<project
name="ENSGHP"basedir="."default="run_tests">
<property
name="src"value="src"/>
<propertyname="lib"value="${basedir}/lib"/>
<propertyname="test"value="test"/>
<propertyname="classes"value="${basedir}/classes"/>
<propertyname="report"value="${basedir}/test-output"/>
<propertyname="report_rar"value="${basedir}/report_rar"/>
<!-- Set classpath -->
<pathid="classpath">
<filesetdir="${lib}">
<includename="*.jar"></include>
</fileset>
</path>
<taskdef
name="testng"classname="com.beust.testng.TestNGAntTask"classpath="${lib}/testng-6.5.1.jar"/>
<target
name="report"depends="run_tests">
<xsltin="${basedir}/test-output/testng-results.xml"style="${basedir}/test-output/testng-results.xsl"
out="${basedir}/test-output/index.html">
<!-- you need to specify the directory here again -->
<paramname="testNgXslt.outputDir"expression="${basedir}/test-output"/>
<classpathrefid="classpath"/>
</xslt>
</target>
<target
name="init">
<!-- 删除之前产生的目录 -->
<deletedir="${report}"failonerror="false"/>
<deletedir="${classes}"failonerror="false"/>
<!-- 创建新目录 -->
<mkdirdir="${classes}"/>
<mkdirdir="${report}"/>
</target>
<!--compile-->
<targetname="compile"depends="init">
<mkdirdir="${classes}"/>
<javacdestdir="${classes}"includeantruntime="false"debug="on">
<compilerargline="-encoding UTF-8 "/>
<classpath
refid="classpath"/>
<srcpath="${src}"/>
<includename="*.java"/>
<includename="**/*.java"/>
</javac>
<copytodir="${classes}">
<filesetdir="${src}">
<excludename="**/*.java"/>
</fileset>
</copy>
</target>
<!--run testng group-->
<target
name="run_tests"depends="compile">
<testng>
<xmlfileset
dir="${basedir}"includes="testng.xml"/>
<classpath>
<pathelement
path="${classes}"/>
</classpath>
<classpath
refid="classpath"/>
</testng>
<fail
message="ERROR: test failed!!!!!"if="test.failed"/>
</target>
<!-- 打包邮件报告 " depends="report" -->
<targetname="reportzip"depends="run-failures">
<tstamp>
<formatproperty="date"pattern="yyyy-MM-dd HH-mm"/>
</tstamp>
<jardestfile="${report_rar}/report_${date}.rar">
<filesetdir="${report}">
<includename="**/*"/>
</fileset>
</jar>
</target>
<!-- 发送邮件报告 messageFile="report/overview-summary.html"-->
<targetname="mail"depends="reportzip"description="send the report from email">
<mailmailhost="smtp.163.com"
mailport=
"25"
subject=
"自动化测试报告"
messagemimetype=
"text/html"
user=
"hudson_renren"
password=
"hudson12321">
<from
address="123@163.com"/>
<to
address="147@renren-inc.com"/>
<toaddress="258@renren-inc.com"/>
<toaddress="145@renren-inc.com"/>
<message>测试的报告请查看附件</message>
<filesetdir="${report_rar}/">
<includename="report_${date}.rar"/>
</fileset>
</mail>
</target>
<!-- Run all failed testcases via testng-failed.xml -->
<targetname="run-failures"depends="run_tests">
<javafork="true"classname="org.testng.TestNG"taskname="Run failures"
failonerror="false"maxmemory="256m">
<classpath>
<pathelementpath="${classes}"/>
<pathelementpath="${java.class.path}"/>
</classpath>
<classpathrefid="classpath"/>
<argvalue="test-output/testng-failed.xml"/>
</java>
</target>
</project>