LUCENE-4360: Support running the same test suite multiple times in parallel.

git-svn-id: https://svn.apache.org/repos/asf/lucene/dev/trunk@1381123 13f79535-47bb-0310-9956-ffa450edef68
This commit is contained in:
Dawid Weiss 2012-09-05 10:05:44 +00:00
parent f00b65a4af
commit b3c300709c
7 changed files with 25 additions and 12 deletions

View File

@ -166,7 +166,7 @@
<classpathentry kind="lib" path="solr/contrib/velocity/lib/commons-beanutils-1.7.0.jar"/> <classpathentry kind="lib" path="solr/contrib/velocity/lib/commons-beanutils-1.7.0.jar"/>
<classpathentry kind="lib" path="solr/contrib/velocity/lib/commons-collections-3.2.1.jar"/> <classpathentry kind="lib" path="solr/contrib/velocity/lib/commons-collections-3.2.1.jar"/>
<classpathentry kind="con" path="org.eclipse.jdt.launching.JRE_CONTAINER"/> <classpathentry kind="con" path="org.eclipse.jdt.launching.JRE_CONTAINER"/>
<classpathentry kind="lib" path="lucene/test-framework/lib/randomizedtesting-runner-2.0.0.rc5.jar"/> <classpathentry kind="lib" path="lucene/test-framework/lib/randomizedtesting-runner-2.0.0.jar"/>
<classpathentry kind="lib" path="solr/contrib/extraction/lib/apache-mime4j-core-0.7.2.jar"/> <classpathentry kind="lib" path="solr/contrib/extraction/lib/apache-mime4j-core-0.7.2.jar"/>
<classpathentry kind="lib" path="solr/contrib/extraction/lib/apache-mime4j-dom-0.7.2.jar"/> <classpathentry kind="lib" path="solr/contrib/extraction/lib/apache-mime4j-dom-0.7.2.jar"/>
<classpathentry kind="lib" path="solr/contrib/extraction/lib/fontbox-1.7.0.jar"/> <classpathentry kind="lib" path="solr/contrib/extraction/lib/fontbox-1.7.0.jar"/>

View File

@ -2,7 +2,7 @@
<library name="JUnit"> <library name="JUnit">
<CLASSES> <CLASSES>
<root url="jar://$PROJECT_DIR$/lucene/test-framework/lib/junit-4.10.jar!/" /> <root url="jar://$PROJECT_DIR$/lucene/test-framework/lib/junit-4.10.jar!/" />
<root url="jar://$PROJECT_DIR$/lucene/test-framework/lib/randomizedtesting-runner-2.0.0.rc5.jar!/" /> <root url="jar://$PROJECT_DIR$/lucene/test-framework/lib/randomizedtesting-runner-2.0.0.jar!/" />
</CLASSES> </CLASSES>
<JAVADOC /> <JAVADOC />
<SOURCES /> <SOURCES />

View File

@ -434,7 +434,7 @@
<dependency> <dependency>
<groupId>com.carrotsearch.randomizedtesting</groupId> <groupId>com.carrotsearch.randomizedtesting</groupId>
<artifactId>randomizedtesting-runner</artifactId> <artifactId>randomizedtesting-runner</artifactId>
<version>2.0.0.rc5</version> <version>2.0.0</version>
</dependency> </dependency>
</dependencies> </dependencies>
</dependencyManagement> </dependencyManagement>

View File

@ -160,6 +160,9 @@ Optimizations
Build Build
* LUCENE-4360: Support running the same test suite multiple times in
parallel (Dawid Weiss)
* LUCENE-3985: Upgrade to randomizedtesting 2.0.0. Added support for * LUCENE-3985: Upgrade to randomizedtesting 2.0.0. Added support for
thread leak detection. Added support for suite timeouts. (Dawid Weiss) thread leak detection. Added support for suite timeouts. (Dawid Weiss)

View File

@ -712,6 +712,7 @@
<property name="tests.dynamicAssignmentRatio" value="0.50" /> <!-- 50% of suites --> <property name="tests.dynamicAssignmentRatio" value="0.50" /> <!-- 50% of suites -->
<property name="tests.haltonfailure" value="true" /> <property name="tests.haltonfailure" value="true" />
<property name="tests.iters" value="" /> <property name="tests.iters" value="" />
<property name="tests.dups" value="1" />
<!-- Pick the random seed now (unless already set). --> <!-- Pick the random seed now (unless already set). -->
<junit4:pickseed property="tests.seed" /> <junit4:pickseed property="tests.seed" />
@ -751,6 +752,7 @@
seed="${tests.seed}" seed="${tests.seed}"
heartbeat="${tests.heartbeat}" heartbeat="${tests.heartbeat}"
uniqueSuiteNames="false"
> >
<!-- Classpaths. --> <!-- Classpaths. -->
<classpath refid="@{junit.classpath}"/> <classpath refid="@{junit.classpath}"/>
@ -908,11 +910,13 @@
</listeners> </listeners>
<!-- Input test classes. --> <!-- Input test classes. -->
<fileset dir="@{testsDir}"> <junit4:duplicate times="${tests.dups}">
<include name="**/Test*.class" /> <fileset dir="@{testsDir}">
<include name="**/*Test.class" /> <include name="**/Test*.class" />
<exclude name="**/*$*" /> <include name="**/*Test.class" />
</fileset> <exclude name="**/*$*" />
</fileset>
</junit4:duplicate>
</junit4:junit4> </junit4:junit4>
<!-- Report the 5 slowest tests from this run to the console. --> <!-- Report the 5 slowest tests from this run to the console. -->
@ -988,6 +992,12 @@ ant test -Dtests.iters=N -Dtestcase=ClassName -Dtests.method=mytest*
ant test -Dtests.iters=N -Dtests.failfast=yes -Dtestcase=... ant test -Dtests.iters=N -Dtests.failfast=yes -Dtestcase=...
ant test -Dtests.iters=N -Dtests.maxfailures=M -Dtestcase=... ant test -Dtests.iters=N -Dtests.maxfailures=M -Dtestcase=...
# Repeats every suite (class) and any tests inside N times
# can be combined with -Dtestcase or -Dtests.iters, etc.
# Can be used for running a single class on multiple JVMs
# in parallel.
ant test -Dtests.dups=N ...
# #
# Test groups. ---------------------------------------------------- # Test groups. ----------------------------------------------------
# #

View File

@ -32,8 +32,8 @@
<dependency org="org.apache.ant" name="ant" rev="1.8.2" transitive="false" /> <dependency org="org.apache.ant" name="ant" rev="1.8.2" transitive="false" />
<dependency org="junit" name="junit" rev="4.10" transitive="false" conf="default->*;junit4-stdalone->*" /> <dependency org="junit" name="junit" rev="4.10" transitive="false" conf="default->*;junit4-stdalone->*" />
<dependency org="com.carrotsearch.randomizedtesting" name="junit4-ant" rev="2.0.0.rc5" transitive="false" conf="default->*;junit4-stdalone->*" /> <dependency org="com.carrotsearch.randomizedtesting" name="junit4-ant" rev="2.0.0" transitive="false" conf="default->*;junit4-stdalone->*" />
<dependency org="com.carrotsearch.randomizedtesting" name="randomizedtesting-runner" rev="2.0.0.rc5" transitive="false" conf="default->*;junit4-stdalone->*" /> <dependency org="com.carrotsearch.randomizedtesting" name="randomizedtesting-runner" rev="2.0.0" transitive="false" conf="default->*;junit4-stdalone->*" />
<exclude org="*" ext="*" matcher="regexp" type="${ivy.exclude.types}"/> <exclude org="*" ext="*" matcher="regexp" type="${ivy.exclude.types}"/>
</dependencies> </dependencies>

View File

@ -32,8 +32,8 @@
<dependency org="org.apache.ant" name="ant" rev="1.8.2" transitive="false" /> <dependency org="org.apache.ant" name="ant" rev="1.8.2" transitive="false" />
<dependency org="junit" name="junit" rev="4.10" transitive="false" conf="default->*;junit4-stdalone->*" /> <dependency org="junit" name="junit" rev="4.10" transitive="false" conf="default->*;junit4-stdalone->*" />
<dependency org="com.carrotsearch.randomizedtesting" name="junit4-ant" rev="2.0.0.rc5" transitive="false" conf="default->*;junit4-stdalone->*" /> <dependency org="com.carrotsearch.randomizedtesting" name="junit4-ant" rev="2.0.0" transitive="false" conf="default->*;junit4-stdalone->*" />
<dependency org="com.carrotsearch.randomizedtesting" name="randomizedtesting-runner" rev="2.0.0.rc5" transitive="false" conf="default->*;junit4-stdalone->*" /> <dependency org="com.carrotsearch.randomizedtesting" name="randomizedtesting-runner" rev="2.0.0" transitive="false" conf="default->*;junit4-stdalone->*" />
<exclude org="*" ext="*" matcher="regexp" type="${ivy.exclude.types}"/> <exclude org="*" ext="*" matcher="regexp" type="${ivy.exclude.types}"/>
</dependencies> </dependencies>