ACCUMULO-4423 Simplify use of JUnit categories * Create surefire.groups, surefire.excludedGroups, failsafe.groups, and failsafe.excludedGroups to control categories, based on feedback from Maven developers about what to expect these property names to be in maven-surefire-plugin and maven-failsafe-plugin version 3.0 * Remove intermediate property names, which added unneeded level of property indirection (under assumption that we'll keep these categories stable over time, in order to keep the docs valid) * Remove unneeded profiles * Update documentation
Project: http://git-wip-us.apache.org/repos/asf/accumulo/repo Commit: http://git-wip-us.apache.org/repos/asf/accumulo/commit/3bf08454 Tree: http://git-wip-us.apache.org/repos/asf/accumulo/tree/3bf08454 Diff: http://git-wip-us.apache.org/repos/asf/accumulo/diff/3bf08454 Branch: refs/heads/1.8 Commit: 3bf084545a6b2ffd693f1323e8e72ea13478455c Parents: dd5bd0c Author: Christopher Tubbs <ctubb...@apache.org> Authored: Wed Aug 31 18:04:32 2016 -0400 Committer: Christopher Tubbs <ctubb...@apache.org> Committed: Wed Aug 31 19:44:04 2016 -0400 ---------------------------------------------------------------------- TESTING.md | 7 ++++--- maven-plugin/src/it/plugin-test/pom.xml | 29 +++++++++++---------------- pom.xml | 30 ++++++++-------------------- 3 files changed, 24 insertions(+), 42 deletions(-) ---------------------------------------------------------------------- http://git-wip-us.apache.org/repos/asf/accumulo/blob/3bf08454/TESTING.md ---------------------------------------------------------------------- diff --git a/TESTING.md b/TESTING.md index 125110b..4d37055 100644 --- a/TESTING.md +++ b/TESTING.md @@ -64,8 +64,8 @@ stopping the MiniAccumuloCluster. While this is a surefire way to isolate tests increases the actual runtime of the test by, on average, 10x. Some times the tests require the use of MAC because the test is being destructive or some special environment setup (e.g. Kerberos). -By default, these tests are run during the `integration-test` lifecycle phase using `mvn verify`. These tests can -also be run at the `test` lifecycle phase using `mvn package -Pminicluster-unit-tests`. +These tests will run by default during the `integration-test` lifecycle phase using `mvn verify`. +To execute only these tests, use `mvn verify -Dfailsafe.groups=org.apache.accumulo.test.categories.MiniClusterOnlyTest` ### Standalone Cluster (`AnyClusterTest`) @@ -79,7 +79,8 @@ Use of a standalone cluster can be enabled using system properties on the Maven providing a Java properties file on the Maven command line. The use of a properties file is recommended since it is typically a fixed file per standalone cluster you want to run the tests against. -These tests will always run during the `integration-test` lifecycle phase using `mvn verify`. +These tests will run by default during the `integration-test` lifecycle phase using `mvn verify`. +To execute only these tests, use `mvn verify -Dfailsafe.groups=org.apache.accumulo.test.categories.AnyClusterTest` ## Configuration for Standalone clusters http://git-wip-us.apache.org/repos/asf/accumulo/blob/3bf08454/maven-plugin/src/it/plugin-test/pom.xml ---------------------------------------------------------------------- diff --git a/maven-plugin/src/it/plugin-test/pom.xml b/maven-plugin/src/it/plugin-test/pom.xml index 3b0b7f7..020e170 100644 --- a/maven-plugin/src/it/plugin-test/pom.xml +++ b/maven-plugin/src/it/plugin-test/pom.xml @@ -94,25 +94,20 @@ </dependency> </dependencies> <build> + <pluginManagement> + <plugins> + <plugin> + <groupId>org.apache.maven.plugins</groupId> + <artifactId>maven-failsafe-plugin</artifactId> + <configuration> + <excludedGroups combine.self="override" /> + <groups combine.self="override" /> + </configuration> + </plugin> + </plugins> + </pluginManagement> <plugins> <plugin> - <groupId>org.apache.maven.plugins</groupId> - <artifactId>maven-failsafe-plugin</artifactId> - <executions> - <execution> - <id>run-integration-tests</id> - <goals> - <goal>integration-test</goal> - <goal>verify</goal> - </goals> - <configuration> - <excludedGroups combine.self="override" /> - <groups combine.self="override" /> - </configuration> - </execution> - </executions> - </plugin> - <plugin> <groupId>@project.groupId@</groupId> <artifactId>@project.artifactId@</artifactId> <version>@project.version@</version> http://git-wip-us.apache.org/repos/asf/accumulo/blob/3bf08454/pom.xml ---------------------------------------------------------------------- diff --git a/pom.xml b/pom.xml index d6393d2..cc2b9e0 100644 --- a/pom.xml +++ b/pom.xml @@ -115,10 +115,6 @@ <url>https://builds.apache.org/view/A-D/view/Accumulo/</url> </ciManagement> <properties> - <accumulo.anyClusterTests>org.apache.accumulo.test.categories.AnyClusterTest</accumulo.anyClusterTests> - <accumulo.it.excludedGroups /> - <accumulo.it.groups>${accumulo.anyClusterTests},${accumulo.miniclusterTests}</accumulo.it.groups> - <accumulo.miniclusterTests>org.apache.accumulo.test.categories.MiniClusterOnlyTest</accumulo.miniclusterTests> <!-- used for filtering the java source with the current version --> <accumulo.release.version>${project.version}</accumulo.release.version> <assembly.tarLongFileMode>posix</assembly.tarLongFileMode> @@ -128,6 +124,8 @@ <eclipseFormatterStyle>${project.parent.basedir}/contrib/Eclipse-Accumulo-Codestyle.xml</eclipseFormatterStyle> <!-- extra release args for testing --> <extraReleaseArgs /> + <failsafe.excludedGroups /> + <failsafe.groups /> <!-- findbugs-maven-plugin won't work on jdk8 or later; set to 3.0.0 or newer --> <findbugs.version>3.0.3</findbugs.version> <!-- surefire/failsafe plugin option --> @@ -151,7 +149,9 @@ <!-- overwritten in hadoop profiles --> <slf4j.version>1.7.5</slf4j.version> <sourceReleaseAssemblyDescriptor>source-release-tar</sourceReleaseAssemblyDescriptor> + <surefire.excludedGroups /> <surefire.failIfNoSpecifiedTests>false</surefire.failIfNoSpecifiedTests> + <surefire.groups /> <!-- Thrift version --> <thrift.version>0.9.1</thrift.version> <!-- ZooKeeper version --> @@ -685,6 +685,8 @@ <groupId>org.apache.maven.plugins</groupId> <artifactId>maven-surefire-plugin</artifactId> <configuration> + <excludedGroups>${surefire.excludedGroups}</excludedGroups> + <groups>${surefire.groups}</groups> <systemPropertyVariables> <java.io.tmpdir>${project.build.directory}</java.io.tmpdir> </systemPropertyVariables> @@ -695,6 +697,8 @@ <groupId>org.apache.maven.plugins</groupId> <artifactId>maven-failsafe-plugin</artifactId> <configuration> + <excludedGroups>${failsafe.excludedGroups}</excludedGroups> + <groups>${failsafe.groups}</groups> <systemPropertyVariables> <java.io.tmpdir>${project.build.directory}</java.io.tmpdir> </systemPropertyVariables> @@ -1010,10 +1014,6 @@ <goal>integration-test</goal> <goal>verify</goal> </goals> - <configuration> - <excludeGroups>${accumulo.it.excludedGroups}</excludeGroups> - <groups>${accumulo.it.groups}</groups> - </configuration> </execution> </executions> </plugin> @@ -1407,19 +1407,5 @@ </pluginManagement> </build> </profile> - <profile> - <id>only-minicluster-tests</id> - <properties> - <accumulo.it.excludedGroups>${accumulo.anyClusterTests}</accumulo.it.excludedGroups> - <accumulo.it.groups>${accumulo.miniclusterTests}</accumulo.it.groups> - </properties> - </profile> - <profile> - <id>standalone-capable-tests</id> - <properties> - <accumulo.it.excludedGroups>${accumulo.miniclusterTests}</accumulo.it.excludedGroups> - <accumulo.it.groups>${accumulo.anyClusterTests}</accumulo.it.groups> - </properties> - </profile> </profiles> </project>