You are viewing a plain text version of this content. The canonical link for it is here.
Posted to issues@hbase.apache.org by "Alejandro Abdelnur (JIRA)" <ji...@apache.org> on 2011/03/11 08:52:59 UTC
[jira] Commented: (HBASE-3625) improve/fix support excluding Tests
via Maven -D property
[ https://issues.apache.org/jira/browse/HBASE-3625?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=13005539#comment-13005539 ]
Alejandro Abdelnur commented on HBASE-3625:
-------------------------------------------
Maven surefire plugin supports a {{-Dtest=[<TEST_CLASS_SIMPLE_NAME>,]+}} property to single out tests to run. An equivalent property is not supported for singling out tests to exclude.
The surefire configuration supports test exclusions by providing a Test Java file path {{****/Test**.java}}, the {{<exclusion>}} section supports multiple paths patterns separated by commas.
Supporting exclusion for
Supporting exclusion for a single test, {{-Dtest.exclude=TestFoo}}, is easy:
{code}
<exclusion>**/Test${test.exclude}.java</exclusion>
{code}
If the {{-Dtest.exclude=}} property is not specified, the pattern will not resolve to a testcase class.
Supporting exclusion for multiple tests can be done easily if full PATH patterns are specified, {{-Dtest.exclude.pattern=***/TestFoo.java,***/TestBar.java}}:
{code}
<exclusion>${test.exclude.pattern}</exclusion>
{code}
Again, if the {{-Dtest.exclude.pattern=}} property is not specified, the pattern will not resolve to testcases classes.
Both properties can be defaulted in the {{<properties>}} section:
{code}
<properties>
<test.exclude></test.exclude>
<test.exclude.pattern>**/${test.exclude}.java</test.exclude.pattern>
</properties>
{code}
Then a single exclusion is needed for both single test class and test file patterns.
{code}
<exclusion>${test.exclude.pattern}</exclusion>
{code}
> improve/fix support excluding Tests via Maven -D property
> ---------------------------------------------------------
>
> Key: HBASE-3625
> URL: https://issues.apache.org/jira/browse/HBASE-3625
> Project: HBase
> Issue Type: Improvement
> Components: build
> Affects Versions: 0.90.1
> Environment: all
> Reporter: Alejandro Abdelnur
> Labels: build
>
> Currently the surefire plugin configuration defines the following exclusion:
> {code}
> .
> <plugin>
> <groupId>org.apache.maven.plugins</groupId>
> <artifactId>maven-surefire-plugin</artifactId>
> <configuration>
> <forkMode>always</forkMode>
> <includes>
> <include>**/Test*.java</include>
> </includes>
> <excludes>
> <exclude>**/*$*</exclude>
> </excludes>
> </configuration>
> </plugin>
> {code}
> AFAICT the '{{***/***$**}}' does not resolve to anything meaningful.
> Adding support to exclude one or more tests via Maven property, i.e. '{{-Dtest.exclude=<TESTCLASS>}}' would be useful.
--
This message is automatically generated by JIRA.
For more information on JIRA, see: http://www.atlassian.com/software/jira