You are viewing a plain text version of this content. The canonical link for it is here.
Posted to issues@maven.apache.org by "Ondrej Zizka (JIRA)" <ji...@codehaus.org> on 2011/12/12 22:37:02 UTC

[jira] (SUREFIRE-808) Selectable "grouping mode" for test groups - UNION or INTERSECTION.

Ondrej Zizka created SUREFIRE-808:
-------------------------------------

             Summary: Selectable "grouping mode" for test groups - UNION or INTERSECTION.
                 Key: SUREFIRE-808
                 URL: https://jira.codehaus.org/browse/SUREFIRE-808
             Project: Maven Surefire
          Issue Type: Improvement
          Components: Junit 4.7+ (parallel) support, Junit 4.x support
    Affects Versions: 2.11, 2.10
            Reporter: Ondrej Zizka


Currently, the `groups` and `excludedGroups` work like:
{code}
( include1 OR include2 ... ) AND NOT ( exclude1 OR exclude2 OR ... )
{code}

This doesn't cover many usecases. For instance, if the groups overlap.
Example: user needs to run only EJB tests under security manager, while only some EJB tests can run under security manager.
In such case, this is needed:

{code}
( EJB AND SecurityManager )
{code}


The suggestion is to introduce two new params:

{code}
groupingMode = union|intersection
excludeGroupingMode = union|intersection
{code}

They would switch AND and OR behavior.
Union would be the default (preserving current behavior).


Would be implemented in a filter, see:
https://github.com/apache/maven-surefire/blob/trunk/surefire-providers/common-junit48/src/main/java/org/apache/maven/surefire/common/junit48/FilterFactory.java#L115

--
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators: https://jira.codehaus.org/secure/ContactAdministrators!default.jspa
For more information on JIRA, see: http://www.atlassian.com/software/jira

        

[jira] (SUREFIRE-808) Selectable "grouping mode" for test groups - UNION or INTERSECTION.

Posted by "Ondrej Zizka (JIRA)" <ji...@codehaus.org>.
    [ https://jira.codehaus.org/browse/SUREFIRE-808?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=285699#comment-285699 ] 

Ondrej Zizka edited comment on SUREFIRE-808 at 12/12/11 3:54 PM:
-----------------------------------------------------------------

BTW other option would be to implement a logical expression for groups selection, like
{code}
groups= ( JMS || EJB ) && Security
groups= ( EJB && CommonCriteria ) && ! Clustering
{code}
but that's for another improvement request...

                
      was (Author: pekarna):
    BTW other option would be to implent a logical expression for groups selection, like
{code}
groups= ( JMS || EJB ) && Security
groups= ( EJB && CommonCriteria ) && ! Clustering
{code}
but that's for another improvement request...

                  
> Selectable "grouping mode" for test groups - UNION or INTERSECTION.
> -------------------------------------------------------------------
>
>                 Key: SUREFIRE-808
>                 URL: https://jira.codehaus.org/browse/SUREFIRE-808
>             Project: Maven Surefire
>          Issue Type: Improvement
>          Components: Junit 4.7+ (parallel) support, Junit 4.x support
>    Affects Versions: 2.10, 2.11
>            Reporter: Ondrej Zizka
>
> Currently, the `groups` and `excludedGroups` work like:
> {code}
> ( include1 OR include2 ... ) AND NOT ( exclude1 OR exclude2 OR ... )
> {code}
> This doesn't cover many usecases. For instance, if the groups overlap.
> Example: user needs to run only EJB tests under security manager, while only some EJB tests can run under security manager.
> In such case, this is needed:
> {code}
> ( EJB AND SecurityManager )
> {code}
> The suggestion is to introduce two new params:
> {code}
> groupingMode = union|intersection
> excludeGroupingMode = union|intersection
> {code}
> They would switch AND and OR behavior.
> Union would be the default (preserving current behavior).
> Would be implemented in a filter, see:
> https://github.com/apache/maven-surefire/blob/trunk/surefire-providers/common-junit48/src/main/java/org/apache/maven/surefire/common/junit48/FilterFactory.java#L115

--
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators: https://jira.codehaus.org/secure/ContactAdministrators!default.jspa
For more information on JIRA, see: http://www.atlassian.com/software/jira

        

[jira] (SUREFIRE-808) Selectable "grouping mode" for test groups - UNION or INTERSECTION.

Posted by "John Casey (JIRA)" <ji...@codehaus.org>.
     [ https://jira.codehaus.org/browse/SUREFIRE-808?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]

John Casey closed SUREFIRE-808.
-------------------------------

    Resolution: Won't Fix
      Assignee: John Casey

Implemented SUREFIRE-809 instead, to provide a richer set of options for selecting groups...also has the advantage of not introducing new parameters to a plugin that already has a nest of them.
                
> Selectable "grouping mode" for test groups - UNION or INTERSECTION.
> -------------------------------------------------------------------
>
>                 Key: SUREFIRE-808
>                 URL: https://jira.codehaus.org/browse/SUREFIRE-808
>             Project: Maven Surefire
>          Issue Type: New Feature
>          Components: Junit 4.7+ (parallel) support, Junit 4.x support
>    Affects Versions: 2.10, 2.11
>            Reporter: Ondrej Zizka
>            Assignee: John Casey
>
> Currently, the `groups` and `excludedGroups` work like:
> {code}
> ( include1 OR include2 ... ) AND NOT ( exclude1 OR exclude2 OR ... )
> {code}
> This doesn't cover many usecases. For instance, if the groups overlap.
> Example: user needs to run only EJB tests under security manager, while only some EJB tests can run under security manager.
> In such case, this is needed:
> {code}
> ( EJB AND SecurityManager )
> {code}
> The suggestion is to introduce two new params:
> {code}
> groupingMode = union|intersection
> excludeGroupingMode = union|intersection
> {code}
> They would switch AND and OR behavior.
> Union would be the default (preserving current behavior).
> Would be implemented in a filter, see:
> https://github.com/apache/maven-surefire/blob/trunk/surefire-providers/common-junit48/src/main/java/org/apache/maven/surefire/common/junit48/FilterFactory.java#L115

--
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators: https://jira.codehaus.org/secure/ContactAdministrators!default.jspa
For more information on JIRA, see: http://www.atlassian.com/software/jira

        

[jira] (SUREFIRE-808) Selectable "grouping mode" for test groups - UNION or INTERSECTION.

Posted by "Ondrej Zizka (JIRA)" <ji...@codehaus.org>.
    [ https://jira.codehaus.org/browse/SUREFIRE-808?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=285699#comment-285699 ] 

Ondrej Zizka commented on SUREFIRE-808:
---------------------------------------

BTW other option would be to implent a logical expression for groups selection, like
{code}
groups= ( JMS || EJB ) && Security
groups= ( EJB && CommonCriteria ) && ! Clustering
{code}
but that's for another improvement request...

                
> Selectable "grouping mode" for test groups - UNION or INTERSECTION.
> -------------------------------------------------------------------
>
>                 Key: SUREFIRE-808
>                 URL: https://jira.codehaus.org/browse/SUREFIRE-808
>             Project: Maven Surefire
>          Issue Type: Improvement
>          Components: Junit 4.7+ (parallel) support, Junit 4.x support
>    Affects Versions: 2.10, 2.11
>            Reporter: Ondrej Zizka
>
> Currently, the `groups` and `excludedGroups` work like:
> {code}
> ( include1 OR include2 ... ) AND NOT ( exclude1 OR exclude2 OR ... )
> {code}
> This doesn't cover many usecases. For instance, if the groups overlap.
> Example: user needs to run only EJB tests under security manager, while only some EJB tests can run under security manager.
> In such case, this is needed:
> {code}
> ( EJB AND SecurityManager )
> {code}
> The suggestion is to introduce two new params:
> {code}
> groupingMode = union|intersection
> excludeGroupingMode = union|intersection
> {code}
> They would switch AND and OR behavior.
> Union would be the default (preserving current behavior).
> Would be implemented in a filter, see:
> https://github.com/apache/maven-surefire/blob/trunk/surefire-providers/common-junit48/src/main/java/org/apache/maven/surefire/common/junit48/FilterFactory.java#L115

--
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators: https://jira.codehaus.org/secure/ContactAdministrators!default.jspa
For more information on JIRA, see: http://www.atlassian.com/software/jira

        

[jira] (SUREFIRE-808) Selectable "grouping mode" for test groups - UNION or INTERSECTION.

Posted by "Kristian Rosenvold (JIRA)" <ji...@codehaus.org>.
    [ https://jira.codehaus.org/browse/SUREFIRE-808?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=285798#comment-285798 ] 

Kristian Rosenvold commented on SUREFIRE-808:
---------------------------------------------

Personally I strongly prefer avoiding a new paramters since the plugin is so bloated with paramterers already, ewpecially if it feats neatly into the existing semantics like the (||)&& stuff
                
> Selectable "grouping mode" for test groups - UNION or INTERSECTION.
> -------------------------------------------------------------------
>
>                 Key: SUREFIRE-808
>                 URL: https://jira.codehaus.org/browse/SUREFIRE-808
>             Project: Maven Surefire
>          Issue Type: Improvement
>          Components: Junit 4.7+ (parallel) support, Junit 4.x support
>    Affects Versions: 2.10, 2.11
>            Reporter: Ondrej Zizka
>
> Currently, the `groups` and `excludedGroups` work like:
> {code}
> ( include1 OR include2 ... ) AND NOT ( exclude1 OR exclude2 OR ... )
> {code}
> This doesn't cover many usecases. For instance, if the groups overlap.
> Example: user needs to run only EJB tests under security manager, while only some EJB tests can run under security manager.
> In such case, this is needed:
> {code}
> ( EJB AND SecurityManager )
> {code}
> The suggestion is to introduce two new params:
> {code}
> groupingMode = union|intersection
> excludeGroupingMode = union|intersection
> {code}
> They would switch AND and OR behavior.
> Union would be the default (preserving current behavior).
> Would be implemented in a filter, see:
> https://github.com/apache/maven-surefire/blob/trunk/surefire-providers/common-junit48/src/main/java/org/apache/maven/surefire/common/junit48/FilterFactory.java#L115

--
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators: https://jira.codehaus.org/secure/ContactAdministrators!default.jspa
For more information on JIRA, see: http://www.atlassian.com/software/jira

        

[jira] (SUREFIRE-808) Selectable "grouping mode" for test groups - UNION or INTERSECTION.

Posted by "Kristian Rosenvold (JIRA)" <ji...@codehaus.org>.
     [ https://jira.codehaus.org/browse/SUREFIRE-808?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]

Kristian Rosenvold updated SUREFIRE-808:
----------------------------------------

    Issue Type: New Feature  (was: Improvement)
    
> Selectable "grouping mode" for test groups - UNION or INTERSECTION.
> -------------------------------------------------------------------
>
>                 Key: SUREFIRE-808
>                 URL: https://jira.codehaus.org/browse/SUREFIRE-808
>             Project: Maven Surefire
>          Issue Type: New Feature
>          Components: Junit 4.7+ (parallel) support, Junit 4.x support
>    Affects Versions: 2.10, 2.11
>            Reporter: Ondrej Zizka
>
> Currently, the `groups` and `excludedGroups` work like:
> {code}
> ( include1 OR include2 ... ) AND NOT ( exclude1 OR exclude2 OR ... )
> {code}
> This doesn't cover many usecases. For instance, if the groups overlap.
> Example: user needs to run only EJB tests under security manager, while only some EJB tests can run under security manager.
> In such case, this is needed:
> {code}
> ( EJB AND SecurityManager )
> {code}
> The suggestion is to introduce two new params:
> {code}
> groupingMode = union|intersection
> excludeGroupingMode = union|intersection
> {code}
> They would switch AND and OR behavior.
> Union would be the default (preserving current behavior).
> Would be implemented in a filter, see:
> https://github.com/apache/maven-surefire/blob/trunk/surefire-providers/common-junit48/src/main/java/org/apache/maven/surefire/common/junit48/FilterFactory.java#L115

--
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators: https://jira.codehaus.org/secure/ContactAdministrators!default.jspa
For more information on JIRA, see: http://www.atlassian.com/software/jira