blob: bb4cd6f991a98a89ec5bad9b03408c436c3fcc99 [file] [log] [blame]
<project name="Automated Eclipse Testing" default="all" basedir="." >
<!--properties file containing the plugin directory name including version number-->
<property file="test.properties" />
<!--properties file containing the build information-->
<property file="label.properties" />
<!--default directory where test-eclipse will be installed-->
<property name="install" value="${basedir}" />
<!--name that can be added to report name to identify which platform tests results come from-->
<property name="platform" value="" />
<!-- The root of the eclipse installation -->
<property name="eclipse-home" value="${install}/eclipse" />
<!-- The path to libary.xml -->
<!--property name="library-file" value="${eclipse-home}/plugins/${org.eclipse.test}/library.xml" /-->
<!-- The directory that will contain the xml and html results from the tests that are run -->
<property name="results" value="${basedir}/results" />
<!-- jonas install directory -->
<property name="jonas432Dir" value="${testDir}/${jonas432DirName}"/>
<target name="init">
<antcall target="setPropertyJOnAS432Dir"/>
</target>
<target name="setPropertyJOnAS432Dir" unless="jonas432Dir">
<property name="jonas432Dir" value="${testDir}/${jonas432DirName}"/>
</target>
<target name="setup" if="clean" description="Reinstall the test Eclipse installation if specified by user">
<delete dir="${install}" />
<mkdir dir="${install}" />
<exec dir="." executable="unzip">
<arg line="-o -qq ../downloads/*.zip -d ${install}"/>
</exec>
<exec dir="." executable="unzip">
<arg line="-o -qq wtp-wst-tests-feature*.zip -d ${install}"/>
</exec>
</target>
<target name="runapitests" depends="setup">
<condition property="usepiagent">
<and>
<available file="${eclipse-home}/plugins/${testPlugin}/test.xml" property="test.xml.exists"/>
<isset property="package.includes"/>
</and>
</condition>
<antcall target="runapitests2"/>
<antcall target="runapitests3"/>
</target>
<target name="runapitests2" if="usepiagent">
<ant antfile="${eclipse-home}/plugins/${testPlugin}/test.xml" dir="${eclipse-home}">
<property name="library-file" value="${testDir}/api-tests.xml"/>
</ant>
<copy file="${eclipse-home}/${report}.xml" tofile="${results}/xml/${report}_${platform}.xml" failonerror="false"/>
<antcall target="genHtml" />
</target>
<target name="runapitests3" unless="usepiagent">
<antcall target="runtests"/>
</target>
<target name="runtests" depends="setup" description="Runs ant on the test.xml for a specified plugin. Requires a property value setting for testPlugin only if test.properties is not available. The property testPlugin represents a directory name made up of the plugin id and plugin version. This directory must contain a valid test.xml.">
<available file="${eclipse-home}/plugins/${testPlugin}/test.xml" property="test.xml.exists"/>
<antcall target="runtests2"/>
</target>
<target name="runtests2" if="test.xml.exists">
<antcall target="runtests-normal"/>
<antcall target="runtests-runAsPerfApp"/>
<copy file="${eclipse-home}/${report}.xml" tofile="${results}/xml/${report}_${platform}.xml" failonerror="false" />
<antcall target="genHtml" />
</target>
<target name="runtests-normal" unless="runAsPerfApp">
<ant antfile="${eclipse-home}/plugins/${testPlugin}/test.xml" dir="${eclipse-home}"/>
<copy file="${eclipse-home}/${report}.xml" tofile="${results}/xml/${report}_${platform}.xml" failonerror="false" />
<antcall target="genHtml" />
</target>
<target name="runtests-runAsPerfApp" if="runAsPerfApp">
<ant antfile="${eclipse-home}/plugins/${testPlugin}/test.xml" dir="${eclipse-home}">
<property name="library-file" value="${testDir}/performance-tests.xml"/>
<property name="runAsPerfApp" value="true"/>
</ant>
<copy file="${eclipse-home}/${report}.xml" tofile="${results}/xml/${report}_${platform}.xml" failonerror="false" />
<antcall target="genHtml" />
</target>
<target name="runperftests">
<antcall target="setupPerformance"/>
<antcall target="runtests">
<param name="genHtml.disable" value="true"/>
</antcall>
</target>
<target name="wst-server-tests" description="Runs the org.eclipse.wst.server.*.tests test.xml">
<antcall target="runapitests">
<param name="testPlugin" value="${org.eclipse.wst.server.core.tests}" />
<param name="report" value="org.eclipse.wst.server.core.tests" />
<param name="package.includes" value="org.eclipse.wst.server"/>
</antcall>
<antcall target="runapitests">
<param name="testPlugin" value="${org.eclipse.wst.server.ui.tests}" />
<param name="report" value="org.eclipse.wst.server.ui.tests" />
<param name="package.includes" value="org.eclipse.wst.server"/>
</antcall>
</target>
<target name="wst-monitor-tests" description="Runs the org.eclipse.wst.internet.monitor.*.tests test.xml">
<antcall target="runtests">
<param name="testPlugin" value="${org.eclipse.wst.internet.monitor.core.tests}" />
<param name="report" value="org.eclipse.wst.internet.monitor.core.tests" />
</antcall>
<antcall target="runtests">
<param name="testPlugin" value="${org.eclipse.wst.internet.monitor.ui.tests}" />
<param name="report" value="org.eclipse.wst.internet.monitor.ui.tests" />
</antcall>
</target>
<target name="wst-cache-tests" description="Runs the org.eclipse.wst.internet.cache.tests test.xml">
<antcall target="runtests">
<param name="testPlugin" value="${org.eclipse.wst.internet.cache.tests}" />
<param name="report" value="org.eclipse.wst.internet.cache.tests" />
</antcall>
</target>
<target name="jst-server-tests" description="Runs the org.eclipse.jst.server.*.tests test.xml">
<antcall target="runtests">
<param name="testPlugin" value="${org.eclipse.jst.server.core.tests}" />
<param name="report" value="org.eclipse.jst.server.core.tests" />
</antcall>
<antcall target="runtests">
<param name="testPlugin" value="${org.eclipse.jst.server.ui.tests}" />
<param name="report" value="org.eclipse.jst.server.ui.tests" />
</antcall>
</target>
<target name="jst-server-tomcat-tests" description="Runs the org.eclipse.jst.server.tomcat.*.tests test.xml">
<antcall target="runtests">
<param name="testPlugin" value="${org.eclipse.jst.server.tomcat.core.tests}" />
<param name="report" value="org.eclipse.jst.server.tomcat.core.tests" />
</antcall>
<antcall target="runtests">
<param name="testPlugin" value="${org.eclipse.jst.server.tomcat.ui.tests}" />
<param name="report" value="org.eclipse.jst.server.tomcat.ui.tests" />
</antcall>
</target>
<target name="jst-server-generic-tests" description="Runs the org.eclipse.jst.server.generic.tests test.xml">
<antcall target="runtests">
<param name="testPlugin" value="${org.eclipse.jst.server.generic.tests}" />
<param name="report" value="org.eclipse.jst.server.generic.tests" />
</antcall>
</target>
<target name="jst-server-geronimo-tests" description="Runs the org.eclipse.jst.server.geronimo.*.tests test.xml">
<antcall target="runtests">
<param name="testPlugin" value="${org.eclipse.jst.server.geronimo.core.tests}" />
<param name="report" value="org.eclipse.jst.server.geronimo.core.tests" />
</antcall>
<antcall target="runtests">
<param name="testPlugin" value="${org.eclipse.jst.server.geronimo.ui.tests}" />
<param name="report" value="org.eclipse.jst.server.geronimo.ui.tests" />
</antcall>
</target>
<target name="jst-j2ee-core-tests" description="Runs the org.eclipse.jst.j2ee.core.tests test.xml">
<antcall target="runtests">
<param name="testPlugin" value="${org.eclipse.jst.j2ee.core.tests}" />
<param name="report" value="org.eclipse.jst.j2ee.core.tests" />
</antcall>
</target>
<target name="jst-j2ee-tests" description="Runs the org.eclipse.jst.j2ee.tests test.xml">
<antcall target="runtests">
<param name="testPlugin" value="${org.eclipse.jst.j2ee.tests}" />
<param name="report" value="org.eclipse.jst.j2ee.tests" />
</antcall>
</target>
<target name="wst-common-tests" description="Runs the org.eclipse.jst.j2ee.tests test.xml">
<antcall target="runtests">
<param name="testPlugin" value="${org.eclipse.wst.common.tests}" />
<param name="report" value="org.eclipse.wst.common.tests" />
</antcall>
</target>
<target name="jst-servlet-tests" description="Runs the org.eclipse.jst.servlet.tests test.xml">
<antcall target="runtests">
<param name="testPlugin" value="${org.eclipse.jst.servlet.tests}" />
<param name="report" value="org.eclipse.jst.servlet.tests" />
</antcall>
</target>
<target name="jst-validation-framework-tests" description="Runs the org.eclipse.jst.validation.test test.xml">
<antcall target="runtests">
<param name="testPlugin" value="${org.eclipse.jst.validation.test}" />
<param name="report" value="org.eclipse.jst.validation.test" />
</antcall>
</target>
<target name="wst-server-perfTests" description="Runs the org.eclipse.wst.server.tests.performance test.xml">
<antcall target="runperftests">
<param name="testPlugin" value="${org.eclipse.wst.server.tests.performance}" />
<param name="report" value="org.eclipse.wst.server.tests.performance" />
</antcall>
</target>
<target name="jst-server-tomcat-perfTests" description="Runs the org.eclipse.jst.server.tomcat.tests.performance test.xml">
<antcall target="runperftests">
<param name="testPlugin" value="${org.eclipse.jst.server.tomcat.tests.performance}" />
<param name="report" value="org.eclipse.jst.server.tomcat.tests.performance" />
</antcall>
</target>
<!-- JSP TESTS -->
<target name="jst-jsp-tests" description="Runs test.xml for
org.eclipse.jst.jsp.core.tests
org.eclipse.jst.jsp.ui.tests
org.eclipse.jst.jsp.tests.encoding">
<antcall target="runtests">
<param name="testPlugin" value="${org.eclipse.jst.jsp.core.tests}" />
<param name="report" value="org.eclipse.jst.jsp.core.tests" />
</antcall>
<antcall target="runtests">
<param name="testPlugin" value="${org.eclipse.jst.jsp.ui.tests}" />
<param name="report" value="org.eclipse.jst.jsp.ui.tests" />
</antcall>
<antcall target="runtests">
<param name="testPlugin" value="${org.eclipse.jst.jsp.tests.encoding}" />
<param name="report" value="org.eclipse.jst.jsp.tests.encoding" />
</antcall>
</target>
<target name="jst-jsp-perfTests" description="Runs test.xml for
org.eclipse.jst.jsp.ui.tests.performance">
<antcall target="runperftests">
<param name="testPlugin" value="${org.eclipse.jst.jsp.ui.tests.performance}" />
<param name="report" value="org.eclipse.jst.jsp.ui.tests.performance" />
</antcall>
</target>
<!-- SSE TESTS -->
<target name="wst-sse-tests" description="Runs test.xml for
org.eclipse.wst.sse.core.tests
org.eclipse.wst.sse.ui.tests">
<antcall target="runtests">
<param name="testPlugin" value="${org.eclipse.wst.sse.core.tests}" />
<param name="report" value="org.eclipse.wst.sse.core.tests" />
</antcall>
<antcall target="runtests">
<param name="testPlugin" value="${org.eclipse.wst.sse.ui.tests}" />
<param name="report" value="org.eclipse.wst.sse.ui.tests" />
</antcall>
</target>
<!-- XML TESTS -->
<target name="wst-xml-tests" description="Runs test.xml for
org.eclipse.wst.xml.core.tests
org.eclipse.wst.xml.ui.tests
org.eclipse.wst.xml.tests.encoding
org.eclipse.wst.xml.validation.tests">
<antcall target="runtests">
<param name="testPlugin" value="${org.eclipse.wst.xml.core.tests}" />
<param name="report" value="org.eclipse.wst.xml.core.tests" />
</antcall>
<antcall target="runtests">
<param name="testPlugin" value="${org.eclipse.wst.xml.ui.tests}" />
<param name="report" value="org.eclipse.wst.xml.ui.tests" />
</antcall>
<antcall target="runtests">
<param name="testPlugin" value="${org.eclipse.wst.xml.tests.encoding}" />
<param name="report" value="org.eclipse.wst.xml.tests.encoding" />
</antcall>
<antcall target="runtests">
<param name="testPlugin" value="${org.eclipse.wst.xml.validation.tests}" />
<param name="report" value="org.eclipse.wst.xml.validation.tests" />
</antcall>
</target>
<!-- WSDL TESTS -->
<target name="wst-wsdl-tests" description="Runs test.xml for
org.eclipse.wst.wsdl.tests
org.eclipse.wst.wsdl.validation.tests">
<antcall target="runapitests">
<param name="testPlugin" value="${org.eclipse.wst.wsdl.tests}" />
<param name="report" value="org.eclipse.wst.wsdl.tests" />
<param name="package.includes" value="org.eclipse.wst.wsdl"/>
</antcall>
<antcall target="runtests">
<param name="testPlugin" value="${org.eclipse.wst.wsdl.validation.tests}" />
<param name="report" value="org.eclipse.wst.wsdl.validation.tests" />
</antcall>
</target>
<!-- WSI TESTS -->
<target name="wst-wsi-tests" description="Runs test.xml for
org.eclipse.wst.wsi.tests">
<antcall target="runtests">
<param name="testPlugin" value="${org.eclipse.wst.wsi.tests}" />
<param name="report" value="org.eclipse.wst.wsi.tests" />
</antcall>
</target>
<!-- XSD TESTS -->
<target name="wst-xsd-tests" description="Runs test.xml for
org.eclipse.wst.xsd.validation.tests">
<antcall target="runtests">
<param name="testPlugin" value="${org.eclipse.wst.xsd.validation.tests}" />
<param name="report" value="org.eclipse.wst.xsd.validation.tests" />
</antcall>
</target>
<target name="wst-xml-perfTests" description="Runs test.xml for
org.eclipse.wst.xml.ui.tests.performance">
<antcall target="runperftests">
<param name="testPlugin" value="${org.eclipse.wst.xml.ui.tests.performance}" />
<param name="report" value="org.eclipse.wst.xml.ui.tests.performance" />
</antcall>
</target>
<!-- HTML TESTS -->
<target name="wst-html-tests" description="Runs test.xml for
org.eclipse.wst.html.core.tests
org.eclipse.wst.html.ui.tests
org.eclipse.wst.html.tests.encoding">
<antcall target="runtests">
<param name="testPlugin" value="${org.eclipse.wst.html.core.tests}" />
<param name="report" value="org.eclipse.wst.html.core.tests" />
</antcall>
<antcall target="runtests">
<param name="testPlugin" value="${org.eclipse.wst.html.ui.tests}" />
<param name="report" value="org.eclipse.wst.html.ui.tests" />
</antcall>
<antcall target="runtests">
<param name="testPlugin" value="${org.eclipse.wst.html.tests.encoding}" />
<param name="report" value="org.eclipse.wst.html.tests.encoding" />
</antcall>
</target>
<target name="wst-html-perfTests" description="Runs test.xml for
org.eclipse.wst.html.ui.tests.performance">
<antcall target="runperftests">
<param name="testPlugin" value="${org.eclipse.wst.html.ui.tests.performance}" />
<param name="report" value="org.eclipse.wst.html.ui.tests.performance" />
</antcall>
</target>
<!-- CSS TESTS -->
<target name="wst-css-tests" description="Runs test.xml for
org.eclipse.wst.css.core.tests
org.eclipse.wst.css.tests.encoding">
<antcall target="runtests">
<param name="testPlugin" value="${org.eclipse.wst.css.core.tests}" />
<param name="report" value="org.eclipse.wst.css.core.tests" />
</antcall>
<antcall target="runtests">
<param name="testPlugin" value="${org.eclipse.wst.css.tests.encoding}" />
<param name="report" value="org.eclipse.wst.css.tests.encoding" />
</antcall>
</target>
<target name="wst-css-perfTests" description="Runs test.xml for
org.eclipse.wst.css.ui.tests.performance">
<antcall target="runperftests">
<param name="testPlugin" value="${org.eclipse.wst.css.ui.tests.performance}" />
<param name="report" value="org.eclipse.wst.css.ui.tests.performance" />
</antcall>
</target>
<target name="wst-common-perfTests" description="Runs test.xml for org.eclipse.wst.common.tests.performance">
<antcall target="runperftests">
<param name="testPlugin" value="${org.eclipse.wst.common.tests.performance}" />
<param name="report" value="org.eclipse.wst.common.tests.performance" />
</antcall>
</target>
<!-- WS TESTS -->
<target name="wst-ws-tests" description="Runs the org.eclipse.wst.ws.tests test.xml">
<antcall target="runtests">
<param name="testPlugin" value="${org.eclipse.wst.ws.tests}" />
<param name="report" value="org.eclipse.wst.ws.tests" />
</antcall>
</target>
<target name="jst-ws-tests" description="Runs the org.eclipse.jst.ws.tests test.xml">
<antcall target="runtests">
<param name="testPlugin" value="${org.eclipse.jst.ws.tests}" />
<param name="report" value="org.eclipse.jst.ws.tests" />
</antcall>
</target>
<target name="jst-ws-perfTests" description="Runs the org.eclipse.jst.ws.tests.performance test.xml">
<antcall target="runperftests">
<param name="testPlugin" value="${org.eclipse.jst.ws.tests.performance}" />
<param name="report" value="org.eclipse.jst.ws.tests.performance" />
</antcall>
</target>
<!-- wsdl performance tests -->
<target name="wst-wsdl-perfTests">
<antcall target="runperftests">
<param name="testPlugin" value="${org.eclipse.wst.wsdl.tests.performance}" />
<param name="report" value="org.eclipse.wst.wsdl.tests.performance" />
</antcall>
</target>
<!-- xsd performance tests -->
<target name="wst-xsd-perfTests">
<antcall target="runperftests">
<param name="testPlugin" value="${org.eclipse.wst.xsd.tests.performance}" />
<param name="report" value="org.eclipse.wst.xsd.tests.performance" />
</antcall>
</target>
<!-- rdb performance tests -->
<target name="wst-rdb-perfTests">
<antcall target="runperftests">
<param name="testPlugin" value="${org.eclipse.wst.rdb.tests.performance}"/>
<param name="report" value="org.eclipse.wst.rdb.tests.performance"/>
</antcall>
</target>
<!-- j2ee performance tests -->
<target name="jst-j2ee-perfTests">
<antcall target="runperftests">
<param name="testPlugin" value="${org.eclipse.jst.j2ee.core.tests.performance}"/>
<param name="report" value="org.eclipse.jst.j2ee.core.tests.performance"/>
</antcall>
</target>
<target name="all" depends="init">
<antcall target="wst-server-tests"/>
<antcall target="wst-monitor-tests"/>
<antcall target="wst-cache-tests"/>
<antcall target="wst-common-tests" />
<antcall target="wst-sse-tests" />
<antcall target="wst-xml-tests" />
<antcall target="wst-wsdl-tests" />
<antcall target="wst-wsi-tests" />
<antcall target="wst-xsd-tests" />
<antcall target="wst-html-tests" />
<antcall target="wst-css-tests" />
<antcall target="wst-ws-tests" />
<antcall target="jst-server-tests"/>
<antcall target="jst-server-tomcat-tests"/>
<antcall target="jst-server-geronimo-tests"/>
<antcall target="jst-server-generic-tests"/>
<antcall target="jst-j2ee-core-tests" />
<antcall target="jst-j2ee-tests" />
<antcall target="jst-servlet-tests" />
<antcall target="jst-validation-framework-tests" />
<antcall target="jst-jsp-tests" />
<antcall target="jst-ws-tests" />
</target>
<target name="setupPerformance">
<delete dir="${perfDir}"/>
<mkdir dir="${perfDir}"/>
<ant antfile="buildAll.xml" dir="${build.home}/org.eclipse.wtp.releng" target="getPreReq"/>
<ant antfile="buildAll.xml" dir="${build.home}/org.eclipse.wtp.releng" target="setupTestEclipse">
<property name="testDir" value="${perfDir}"/>
</ant>
<ant antfile="buildAll.xml" dir="${build.home}/org.eclipse.wtp.releng" target="setupPerformance"/>
</target>
<target name="performance" depends="init">
<!--
<antcall target="all">
<param name="runAsPerfApp" value="true"/>
</antcall>
-->
<antcall target="wst-common-perfTests"/>
<antcall target="wst-wsdl-perfTests"/>
<antcall target="wst-server-perfTests" />
<antcall target="jst-server-tomcat-perfTests" />
<antcall target="jst-jsp-perfTests" />
<antcall target="wst-xml-perfTests" />
<antcall target="wst-html-perfTests" />
<antcall target="wst-css-perfTests" />
<!--
<antcall target="jst-ws-perfTests"/>
-->
<antcall target="wst-xsd-perfTests"/>
<antcall target="wst-rdb-perfTests"/>
<antcall target="jst-j2ee-perfTests"/>
<!--
<antcall target="genPerfGraphs" />
-->
</target>
<target name="genHtml" description="Generates HTML results with provided JUNIT.XSL provided" unless="genHtml.disable">
<style style="JUNIT.XSL" basedir="${results}/xml" destdir="${results}/html" />
</target>
<target name="genPerfGraphs" description="Generates performance graphs">
<condition property="osWindows" value="true">
<os family="windows" />
</condition>
<condition property="java.library.path" value="${eclipseBuilderDirectory}/swt-win32">
<os family="windows" />
</condition>
<condition property="swt.library.path" value="${eclipseBuilderDirectory}/swt-linux-motif">
<os family="unix" />
</condition>
<antcall target="genPerfGraphsWindows"/>
<antcall target="genPerfGraphsLinux"/>
</target>
<target name="genPerfGraphsWindows" if="osWindows">
<java classname="org.eclipse.test.performance.ui.Main" fork="true" maxmemory="256m">
<arg line="-baseline ${perf.ref.buildId} -current ${perf.buildId} -jvm ${perf.jvm} -config ${perf.config} -config.properties ${perf.config},${perf.config},${perf.config},${results}/graph/${perf.config} -output ${results}/graph"/>
<classpath>
<fileset dir="${eclipseBuilderDirectory}/plugins">
<exclude name="**/*swt.motif*.jar"/>
<exclude name="**/*swt.gtk*.jar"/>
<include name="**/*.jar"/>
</fileset>
<fileset dir="${build.home}/${cloudscapeLib}">
<include name="**/*.jar"/>
</fileset>
</classpath>
<env key="LD_LIBRARY_PATH" value="${eclipseBuilderDirectory}/swt-win32"/>
<sysproperty key="PLUGIN_PATH" value="${eclipseBuilderDirectory}/plugins/org.eclipse.test.performance.ui"/>
<sysproperty key="eclipse.perf.dbloc" value="${build.home}/${perf.dbloc}"/>
<sysproperty key="java.library.path" value="${eclipseBuilderDirectory}/swt-win32"/>
</java>
</target>
<target name="genPerfGraphsLinux" unless="osWindows">
<java classname="org.eclipse.test.performance.ui.Main" fork="true" maxmemory="256m">
<arg line="-baseline ${perf.ref.buildId} -current ${perf.buildId} -jvm ${perf.jvm} -config ${perf.config} -config.properties ${perf.config},${perf.config},${perf.config},${results}/graph/${perf.config} -output ${results}/graph"/>
<classpath>
<fileset dir="${eclipseBuilderDirectory}/plugins">
<exclude name="**/*swt.win32*.jar"/>
<include name="**/*.jar"/>
</fileset>
<fileset dir="${build.home}/${cloudscapeLib}">
<include name="**/*.jar"/>
</fileset>
</classpath>
<env key="LD_LIBRARY_PATH" value="${eclipseBuilderDirectory}/swt-linux-motif"/>
<sysproperty key="PLUGIN_PATH" value="${eclipseBuilderDirectory}/plugins/org.eclipse.test.performance.ui"/>
<sysproperty key="eclipse.perf.dbloc" value="${build.home}/${perf.dbloc}"/>
<sysproperty key="java.library.path" value="${eclipseBuilderDirectory}/swt-linux-motif"/>
</java>
</target>
</project>