1faa4b864SLei De Bin<?xml version="1.0"?> 27acce70dSLiu Zhe<!--*********************************************************** 37acce70dSLiu Zhe * 47acce70dSLiu Zhe * Licensed to the Apache Software Foundation (ASF) under one 57acce70dSLiu Zhe * or more contributor license agreements. See the NOTICE file 67acce70dSLiu Zhe * distributed with this work for additional information 77acce70dSLiu Zhe * regarding copyright ownership. The ASF licenses this file 87acce70dSLiu Zhe * to you under the Apache License, Version 2.0 (the 97acce70dSLiu Zhe * "License"); you may not use this file except in compliance 107acce70dSLiu Zhe * with the License. You may obtain a copy of the License at 117acce70dSLiu Zhe * 127acce70dSLiu Zhe * http://www.apache.org/licenses/LICENSE-2.0 137acce70dSLiu Zhe * 147acce70dSLiu Zhe * Unless required by applicable law or agreed to in writing, 157acce70dSLiu Zhe * software distributed under the License is distributed on an 167acce70dSLiu Zhe * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY 177acce70dSLiu Zhe * KIND, either express or implied. See the License for the 187acce70dSLiu Zhe * specific language governing permissions and limitations 197acce70dSLiu Zhe * under the License. 207acce70dSLiu Zhe * 217acce70dSLiu Zhe ***********************************************************--> 22b164ae3eSLei De Bin 23b164ae3eSLei De Bin 24faa4b864SLei De Bin 25faa4b864SLei De Bin<project basedir="." default="test"> 2609c344eeSLiu Zhe <property environment="env" /> 2709c344eeSLiu Zhe <property file="build.properties" /> 2809c344eeSLiu Zhe <property name="env.DISPLAY" value=":0.0"/> 2909c344eeSLiu Zhe <property name="env.INPATH" value="testspace"/> 3009c344eeSLiu Zhe <property name="env.TESTSPACE" value="${env.INPATH}" /> 3109c344eeSLiu Zhe <property name="env.JUNIT_HOME" value="external/junit" /> 32faa4b864SLei De Bin <property name="junit.home" value="${env.JUNIT_HOME}" /> 33faa4b864SLei De Bin <property name="testspace" value="${env.TESTSPACE}" /> 3409c344eeSLiu Zhe <property name="classes" value="${testspace}/class" /> 3522a14f28SLiu Zhe <property name="dist" value="." /> 36d7740c70SLiu Zhe <property name="test.name" value="BVT" /> 37de586eddSLiu Zhe <property name="test.classes" value="testcase/gui/bvt/*.class" /> 38faa4b864SLei De Bin <property name="test.output" value="${testspace}/output" /> 39faa4b864SLei De Bin <property name="test.result" value="${test.output}/result" /> 40faa4b864SLei De Bin <property name="test.report" value="${test.output}/report" /> 410e2e75f4SLiu Zhe <property name="junit.style.dir" value="reportstyle" /> 427dd2b5bbSLiu Zhe 430e2e75f4SLiu Zhe <path id="junit.classpath"> 44faa4b864SLei De Bin <fileset dir="${junit.home}" erroronmissingdir="false"> 45faa4b864SLei De Bin <include name="*.jar" /> 46faa4b864SLei De Bin </fileset> 47faa4b864SLei De Bin </path> 48faa4b864SLei De Bin 490e2e75f4SLiu Zhe <target name="testcommon.init"> 50faa4b864SLei De Bin <mkdir dir="${classes}" /> 51faa4b864SLei De Bin <copy includeemptydirs="false" todir="${classes}"> 520e2e75f4SLiu Zhe <fileset dir="testcommon/source"> 53faa4b864SLei De Bin <exclude name="**/*.java" /> 54faa4b864SLei De Bin </fileset> 55faa4b864SLei De Bin </copy> 56faa4b864SLei De Bin </target> 57faa4b864SLei De Bin 5822a14f28SLiu Zhe <target name="testcommon.compile" depends="testcommon.init, prepare.junit"> 59*6b55ece7SLiu Zhe <javac destdir="${classes}" debug="on" source="1.6" encoding="utf-8" includeantruntime="false"> 600e2e75f4SLiu Zhe <src path="testcommon/source"/> 6122a14f28SLiu Zhe <classpath> 6222a14f28SLiu Zhe <path refid="junit.classpath"/> 6322a14f28SLiu Zhe </classpath> 640e2e75f4SLiu Zhe </javac> 65faa4b864SLei De Bin </target> 66faa4b864SLei De Bin 670e2e75f4SLiu Zhe <target name="testgui.init"> 680e2e75f4SLiu Zhe <mkdir dir="${classes}" /> 690e2e75f4SLiu Zhe <copy includeemptydirs="false" todir="${classes}"> 700e2e75f4SLiu Zhe <fileset dir="testgui/source"> 710e2e75f4SLiu Zhe <exclude name="**/*.java" /> 720e2e75f4SLiu Zhe </fileset> 730e2e75f4SLiu Zhe </copy> 74faa4b864SLei De Bin </target> 75faa4b864SLei De Bin 760e2e75f4SLiu Zhe <target name="testgui.compile" depends="testgui.init, prepare.junit"> 77*6b55ece7SLiu Zhe <javac destdir="${classes}" debug="on" source="1.6" encoding="utf-8" includeantruntime="false"> 780e2e75f4SLiu Zhe <src path="testgui/source"/> 797acce70dSLiu Zhe <classpath> 807acce70dSLiu Zhe <pathelement location="${classes}" /> 817acce70dSLiu Zhe <path refid="junit.classpath"/> 827acce70dSLiu Zhe </classpath> 830e2e75f4SLiu Zhe </javac> 84faa4b864SLei De Bin </target> 85faa4b864SLei De Bin 860e2e75f4SLiu Zhe <target name="testuno.init"> 870e2e75f4SLiu Zhe <mkdir dir="${classes}" /> 880e2e75f4SLiu Zhe <copy includeemptydirs="false" todir="${classes}"> 890e2e75f4SLiu Zhe <fileset dir="testuno/source"> 900e2e75f4SLiu Zhe <exclude name="**/*.java" /> 910e2e75f4SLiu Zhe </fileset> 920e2e75f4SLiu Zhe </copy> 93faa4b864SLei De Bin </target> 94faa4b864SLei De Bin 9522a14f28SLiu Zhe <target name="testuno.compile" depends="testuno.init"> 967acce70dSLiu Zhe <path id="uno.classpath"> 972d64174bSLiu Zhe <fileset dir="${openoffice.home}" erroronmissingdir="false"> 987acce70dSLiu Zhe <include name="**/juh.jar" /> 997acce70dSLiu Zhe <include name="**/unoil.jar" /> 1007acce70dSLiu Zhe <include name="**/ridl.jar" /> 1017acce70dSLiu Zhe <include name="**/jurt.jar" /> 1027acce70dSLiu Zhe </fileset> 1037acce70dSLiu Zhe </path> 104*6b55ece7SLiu Zhe <javac destdir="${classes}" debug="on" source="1.6" encoding="utf-8" includeantruntime="false"> 1050e2e75f4SLiu Zhe <src path="testuno/source"/> 1067acce70dSLiu Zhe <classpath> 1077acce70dSLiu Zhe <pathelement location="${classes}" /> 1087acce70dSLiu Zhe <path refid="junit.classpath"/> 1097acce70dSLiu Zhe <path refid="uno.classpath"/> 1107acce70dSLiu Zhe </classpath> 1110e2e75f4SLiu Zhe </javac> 112faa4b864SLei De Bin </target> 113faa4b864SLei De Bin 1140e2e75f4SLiu Zhe <target name="clean" description="Clean all output"> 11509c344eeSLiu Zhe <delete dir="${testspace}" /> 1160e2e75f4SLiu Zhe </target> 1170e2e75f4SLiu Zhe 1180e2e75f4SLiu Zhe <target name="check.junit"> 1190e2e75f4SLiu Zhe <available file="junit.jar" property="junit.jar.exists"> 1200e2e75f4SLiu Zhe <filepath refid="junit.classpath" /> 1210e2e75f4SLiu Zhe </available> 1220e2e75f4SLiu Zhe </target> 1230e2e75f4SLiu Zhe 1240e2e75f4SLiu Zhe <target name="prepare.junit" depends="check.junit" unless="junit.jar.exists"> 1250e2e75f4SLiu Zhe <property name="junit.jar.repos" value="http://repo1.maven.org/maven2/junit/junit/4.10/junit-4.10.jar" /> 1260e2e75f4SLiu Zhe <mkdir dir="${junit.home}" /> 1270e2e75f4SLiu Zhe <get src="${junit.jar.repos}" dest="${junit.home}/junit.jar" skipexisting="true" /> 1280e2e75f4SLiu Zhe </target> 1290e2e75f4SLiu Zhe 1300e2e75f4SLiu Zhe <target name="compile" depends="testcommon.init, testcommon.compile, testgui.init, testgui.compile, testuno.init, testuno.compile" description="Compile source code"> 131faa4b864SLei De Bin </target> 132faa4b864SLei De Bin 13322a14f28SLiu Zhe <target name="dist"> 134faa4b864SLei De Bin <tstamp /> 1350e2e75f4SLiu Zhe <property name="dist.archive" value="aoo_test_${DSTAMP}.zip" /> 13622a14f28SLiu Zhe <zip destfile="${dist}/${dist.archive}" basedir="." update="true" includes="testcommon/**,testgui/**,testuno/**,build.xml,build.example.properties,external/**,reportstyle/**" excludes="**/bin/**"> 13722a14f28SLiu Zhe </zip> 138faa4b864SLei De Bin </target> 139faa4b864SLei De Bin 140faa4b864SLei De Bin <target name="check.build" description="Check the build context"> 141e90ed1f0SLiu Zhe <condition property="openoffice.pack.dir" value="${env.SRC_ROOT}/instsetoo_native/${env.INPATH}/OpenOffice/archive/install/en-US"> 1427acce70dSLiu Zhe <isset property="env.SRC_ROOT" /> 143faa4b864SLei De Bin </condition> 144faa4b864SLei De Bin <condition property="find.build.skip"> 145faa4b864SLei De Bin <or> 146e90ed1f0SLiu Zhe <isset property="openoffice.pack.url" /> 147e90ed1f0SLiu Zhe <isset property="openoffice.pack.dir" /> 148faa4b864SLei De Bin <isset property="openoffice.home" /> 149faa4b864SLei De Bin </or> 150faa4b864SLei De Bin </condition> 151faa4b864SLei De Bin <condition property="download.build.skip"> 152faa4b864SLei De Bin <or> 153e90ed1f0SLiu Zhe <isset property="openoffice.pack.dir" /> 154faa4b864SLei De Bin <isset property="openoffice.home" /> 155faa4b864SLei De Bin </or> 156faa4b864SLei De Bin </condition> 157faa4b864SLei De Bin <condition property="install.build.skip"> 158e90ed1f0SLiu Zhe <isset property="openoffice.home" /> 159faa4b864SLei De Bin </condition> 160faa4b864SLei De Bin </target> 161faa4b864SLei De Bin 162faa4b864SLei De Bin <target name="find.build" unless="find.build.skip" description="Find the newest build on the remote server"> 163faa4b864SLei De Bin <loadresource property="openoffice.build"> 164faa4b864SLei De Bin <url url="${openoffice.build.url}" /> 165faa4b864SLei De Bin <filterchain> 166faa4b864SLei De Bin <deletecharacters chars=" \t\r\n" /> 167faa4b864SLei De Bin </filterchain> 168faa4b864SLei De Bin </loadresource> 169e90ed1f0SLiu Zhe 170e90ed1f0SLiu Zhe <echo message="openoffice.pack.url=${openoffice.archive.url}" file="${testspace}/.temp.properties" /> 171e90ed1f0SLiu Zhe <property file="${testspace}/.temp.properties"/> 172e90ed1f0SLiu Zhe <property name="openoffice.build.name" value="${openoffice.build}" /> 173e90ed1f0SLiu Zhe <echo>#OpenOffice Build Name: ${openoffice.build.name}</echo> 174e90ed1f0SLiu Zhe <echo>#OpenOffice Package URL: ${openoffice.pack.url}</echo> 175faa4b864SLei De Bin </target> 176faa4b864SLei De Bin 177e90ed1f0SLiu Zhe <target name="download" unless="${skip}"> 178e90ed1f0SLiu Zhe <delete dir="${dest}" /> 179e90ed1f0SLiu Zhe <mkdir dir="${dest}" /> 180e90ed1f0SLiu Zhe <get src="${src}" dest="${dest}" verbose="false" usetimestamp="true" skipexisting="true" /> 181e90ed1f0SLiu Zhe </target> 182e90ed1f0SLiu Zhe 183faa4b864SLei De Bin <target name="download.build" unless="download.build.skip" description="Download the specified build from the remote server"> 184e90ed1f0SLiu Zhe <property name="openoffice.pack.dir" value="${testspace}/download" /> 185e90ed1f0SLiu Zhe <property name="openoffice.pack.download.mark" value="${testspace}/download/url.txt"/> 186e90ed1f0SLiu Zhe <loadfile property="openoffice.pack.download.url" srcFile="${openoffice.pack.download.mark}" quiet="true" failonerror="false"/> 187e90ed1f0SLiu Zhe <condition property="download.build.skip" value="true" else="false"> 188e90ed1f0SLiu Zhe <equals arg1="${openoffice.pack.download.url}" arg2="${openoffice.pack.url}"/> 189e90ed1f0SLiu Zhe </condition> 190e90ed1f0SLiu Zhe 191e90ed1f0SLiu Zhe <echo>#Build is Downloaded: ${download.build.skip}</echo> 192e90ed1f0SLiu Zhe <antcall target="download" inheritAll="false"> 193e90ed1f0SLiu Zhe <param name="skip" value="${download.build.skip}"/> 194e90ed1f0SLiu Zhe <param name="src" value="${openoffice.pack.url}"/> 195e90ed1f0SLiu Zhe <param name="dest" value="${openoffice.pack.dir}"/> 196e90ed1f0SLiu Zhe </antcall> 197e90ed1f0SLiu Zhe <!-- 198e90ed1f0SLiu Zhe <get src="${openoffice.pack.url}" dest="${openoffice.pack.dir}" verbose="false" usetimestamp="true" skipexisting="true" /> 199e90ed1f0SLiu Zhe --> 200e90ed1f0SLiu Zhe <echo message="${openoffice.pack.url}" file="${openoffice.pack.download.mark}" /> 201e90ed1f0SLiu Zhe <echo>#OpenOffice Package Dir: ${openoffice.pack.dir}</echo> 202faa4b864SLei De Bin </target> 203faa4b864SLei De Bin 204faa4b864SLei De Bin <target name="install.build" unless="install.build.skip" description="Install the build to the local"> 205e90ed1f0SLiu Zhe <property name="openoffice.install.dir" value="${testspace}/install/aoo" /> 206e90ed1f0SLiu Zhe <property name="openoffice.install.temp" value="${testspace}/install/temp" /> 207e90ed1f0SLiu Zhe <delete dir="${openoffice.install.temp}"/> 208e90ed1f0SLiu Zhe <mkdir dir="${openoffice.install.temp}" /> 209e90ed1f0SLiu Zhe <unzip dest="${openoffice.install.temp}"> 210e90ed1f0SLiu Zhe <fileset dir="${openoffice.pack.dir}"> 2117acce70dSLiu Zhe <include name="**/Apache_OpenOffice*.zip" /> 212faa4b864SLei De Bin </fileset> 213faa4b864SLei De Bin </unzip> 214faa4b864SLei De Bin <pathconvert property="gz.files" pathsep=" " setonempty="false"> 215faa4b864SLei De Bin <path> 216e90ed1f0SLiu Zhe <fileset dir="${openoffice.pack.dir}" includes="Apache_OpenOffice*.gz" /> 217faa4b864SLei De Bin </path> 218faa4b864SLei De Bin </pathconvert> 219e90ed1f0SLiu Zhe <exec dir="${openoffice.install.temp}" executable="tar" failifexecutionfails="false"> 220d7740c70SLiu Zhe <arg line="-zxpf ${gz.files}" /> 221faa4b864SLei De Bin </exec> 222e90ed1f0SLiu Zhe <pathconvert property="openoffice.root.dir" pathsep=" " setonempty="false"> 22309c344eeSLiu Zhe <path> 224e90ed1f0SLiu Zhe <dirset dir="${openoffice.install.temp}"> 22509c344eeSLiu Zhe <include name="*"/> 22609c344eeSLiu Zhe </dirset> 22709c344eeSLiu Zhe </path> 22809c344eeSLiu Zhe </pathconvert> 229e90ed1f0SLiu Zhe <delete dir="${openoffice.install.dir}"/> 230e90ed1f0SLiu Zhe <move file="${openoffice.root.dir}" tofile="${openoffice.install.dir}"/> 231e90ed1f0SLiu Zhe <delete dir="${openoffice.install.temp}"/> 232faa4b864SLei De Bin <pathconvert property="openoffice.bin" pathsep=" " setonempty="false"> 233faa4b864SLei De Bin <path> 234e90ed1f0SLiu Zhe <fileset dir="${openoffice.install.dir}" includes="**/*/soffice.bin" followsymlinks="false" /> 235faa4b864SLei De Bin </path> 236faa4b864SLei De Bin </pathconvert> 2372d64174bSLiu Zhe <dirname property="openoffice.bin.parent" file="${openoffice.bin}" /> 2382d64174bSLiu Zhe <property name="openoffice.home" location="${openoffice.bin.parent}/../" /> 239faa4b864SLei De Bin <fail unless="openoffice.home" /> 240e90ed1f0SLiu Zhe <echo>#Openoffice Home: ${openoffice.home}</echo> 241faa4b864SLei De Bin </target> 242faa4b864SLei De Bin 243e90ed1f0SLiu Zhe <target name="run.test" depends="compile, detect.testenv" description="Run junit"> 244faa4b864SLei De Bin <tstamp> 245faa4b864SLei De Bin <format property="output.stamp" pattern="yyMMdd.hhmm" /> 246faa4b864SLei De Bin </tstamp> 247faa4b864SLei De Bin 248faa4b864SLei De Bin <move file="${test.output}" tofile="${test.output}.${output.stamp}" failonerror="false" /> 249faa4b864SLei De Bin <mkdir dir="${test.result}" /> 250faa4b864SLei De Bin <mkdir dir="${test.report}" /> 251faa4b864SLei De Bin <mkdir dir="${test.output}/temp" /> 2522d64174bSLiu Zhe 253faa4b864SLei De Bin <junit fork="yes" forkmode="once" tempdir="${test.output}/temp" printsummary="yes" showoutput="false" errorProperty="test.failed" failureProperty="test.failed" dir="."> 25409c344eeSLiu Zhe <env key="DISPLAY" value="${env.DISPLAY}"/> 25509c344eeSLiu Zhe <sysproperty key="openoffice.home" value="${openoffice.home}" /> 256faa4b864SLei De Bin <sysproperty key="testspace" value="${testspace}" /> 257faa4b864SLei De Bin <syspropertyset> 258faa4b864SLei De Bin <propertyref builtin="commandline" /> 259faa4b864SLei De Bin </syspropertyset> 260faa4b864SLei De Bin <batchtest todir="${test.result}"> 261faa4b864SLei De Bin <fileset dir="${classes}" includes="${test.classes}" /> 262faa4b864SLei De Bin </batchtest> 263faa4b864SLei De Bin 264faa4b864SLei De Bin <formatter type="xml" /> 2657acce70dSLiu Zhe <classpath> 2667acce70dSLiu Zhe <pathelement location="${classes}" /> 267*6b55ece7SLiu Zhe <pathelement location="testgui/data" /> 268*6b55ece7SLiu Zhe <pathelement location="testuno/data" /> 2697acce70dSLiu Zhe <path refid="junit.classpath"/> 2707acce70dSLiu Zhe <path refid="uno.classpath"/> 2717acce70dSLiu Zhe </classpath> 272faa4b864SLei De Bin </junit> 273e90ed1f0SLiu Zhe 274faa4b864SLei De Bin <junitreport todir="${test.report}"> 275faa4b864SLei De Bin <fileset dir="${test.result}"> 276faa4b864SLei De Bin <include name="TEST-*.xml" /> 277faa4b864SLei De Bin </fileset> 278faa4b864SLei De Bin <report format="frames" styledir="${junit.style.dir}" todir="${test.report}"> 279e90ed1f0SLiu Zhe <param name="TITLE" expression="${test.name}: ${openoffice.build.name}, ${test.os.name}-${test.os.version}-${test.os.arch}"/> 280faa4b864SLei De Bin </report> 281faa4b864SLei De Bin </junitreport> 2827acce70dSLiu Zhe <property name="test.report.index" location="${test.report}/index.html" /> 2837acce70dSLiu Zhe <echo>Open ${test.report.index} in browser to view the test report.</echo> 284faa4b864SLei De Bin </target> 285faa4b864SLei De Bin 2860e2e75f4SLiu Zhe <target name="test" depends="check.build,find.build,download.build,install.build,run.test" description="Run testing on the specified build. The build is automatically downloaded and installed according to the context."> 287faa4b864SLei De Bin <fail message="Test Failed" if="test.failed" /> 288faa4b864SLei De Bin </target> 289e90ed1f0SLiu Zhe 290e90ed1f0SLiu Zhe <target name="detect.testenv"> 29196b3c68eSLiu Zhe <exec outputproperty="test.os.name" executable="lsb_release" failifexecutionfails="false" os="Linux"> 292d7740c70SLiu Zhe <arg line="-is" /> 293d7740c70SLiu Zhe </exec> 29496b3c68eSLiu Zhe <exec outputproperty="test.os.version" executable="lsb_release" failifexecutionfails="false" os="Linux"> 295d7740c70SLiu Zhe <arg line="-rs" /> 296d7740c70SLiu Zhe </exec> 297d7740c70SLiu Zhe <property name="test.os.name" value="${os.name}" /> 298d7740c70SLiu Zhe <property name="test.os.version" value="${os.version}" /> 299d7740c70SLiu Zhe <property name="test.os.arch" value="${os.arch}" /> 300d7740c70SLiu Zhe <echo>${test.os.name}-${test.os.version}-${test.os.arch}</echo> 301e90ed1f0SLiu Zhe <property file="${openoffice.home}/program/versionrc" prefix="openoffice"/> 302e90ed1f0SLiu Zhe <property file="${openoffice.home}/program/version.ini" prefix="openoffice"/> 303e90ed1f0SLiu Zhe <property name="openoffice.build.name" value=""/> 304d7740c70SLiu Zhe </target> 305d7740c70SLiu Zhe 306faa4b864SLei De Bin 307d7740c70SLiu Zhe <target name="report.test" unless="report.test.skip" description="Upload the testing result to report repository." depends="detect.testenv"> 308e90ed1f0SLiu Zhe <property name="report.to" value="${openoffice.build.name}/${test.name}/${test.os.name}-${test.os.version}-${test.os.arch}" /> 3097dd2b5bbSLiu Zhe <echo>Uploading report to ${report.repos}/${report.to}</echo> 31009c344eeSLiu Zhe <property name="report.to.temp" location="${testspace}/.temp.ouput"/> 31109c344eeSLiu Zhe <delete dir="${report.to.temp}" deleteonexit="true"/> 3127dd2b5bbSLiu Zhe <copy todir="${report.to.temp}/${report.to}"> 3137dd2b5bbSLiu Zhe <fileset dir="${test.output}" /> 3147dd2b5bbSLiu Zhe </copy> 31509c344eeSLiu Zhe <scp todir="${report.repos}" trust="true"> 3167dd2b5bbSLiu Zhe <fileset dir="${report.to.temp}"/> 3177dd2b5bbSLiu Zhe </scp> 31809c344eeSLiu Zhe <delete dir="${report.to.temp}" deleteonexit="true"/> 319faa4b864SLei De Bin </target> 320faa4b864SLei De Bin 321faa4b864SLei De Bin <target name="detect.build" depends="find.build" description="Check if new build is available. If no new build is available, the target will be failed."> 322d7740c70SLiu Zhe <property name="test.mark.file" location="${testspace}/${test.name}.build"/> 323d7740c70SLiu Zhe <loadfile property="local.build" srcFile="${test.mark.file}" quiet="true" failonerror="false" /> 324faa4b864SLei De Bin <fail message="The build has been tested! We don't want to test it twice."> 325faa4b864SLei De Bin <condition> 326faa4b864SLei De Bin <equals arg1="${openoffice.build}" arg2="${local.build}" trim="true" /> 327faa4b864SLei De Bin </condition> 328faa4b864SLei De Bin </fail> 329faa4b864SLei De Bin <mkdir dir="${testspace}" /> 330d7740c70SLiu Zhe <echo file="${test.mark.file}">${openoffice.build}</echo> 331faa4b864SLei De Bin </target> 332faa4b864SLei De Bin 3330e2e75f4SLiu Zhe <target name="routine.test" depends="detect.build,download.build,install.build,run.test,report.test" description="Periodically run testing."> 334faa4b864SLei De Bin <fail message="Test Failed" if="test.failed" /> 335faa4b864SLei De Bin </target> 336faa4b864SLei De Bin</project> 337