Uploaded image for project: 'Maven Surefire'
  1. Maven Surefire
  2. SUREFIRE-806

Make ignoring of <includes> and <excludes> on -Dtest=... optional (for multiple Surefire executions)

    XMLWordPrintableJSON

Details

    • Improvement
    • Status: Closed
    • Major
    • Resolution: Fixed
    • 2.11
    • 2.12
    • Maven Surefire Plugin
    • None

    Description

      Let's have a single module with multiple Surefire executions (e.g. with different Arquillian configs)
      Tests are divided to run in either one, using <includes> and <excludes>.

      Then, if you use -Dtest=..., the specified test(s) is run twice - once for each execution (and usually fails in one of them in our scenario).

      My suggestion is to introduce a Surefire config property which would make this behavior optional:

      <configuration>
        <ignoreIncludesOnSingleTest>false</ignoreIncludesOnSingleTest>
      </configuration>
      

      This would cause Surefire to run the intersection of the two sets -
      one created by the mask from -Dtest=...,
      second created by the includes and excludes of the respective execution.

      Current description from http://maven.apache.org/plugins/maven-surefire-plugin/test-mojo.html :

      Specify this parameter to run individual tests by file name, overriding the includes/excludes parameters. Each pattern you specify here will be used to create an include pattern formatted like **/${test}.java, so you can just type "-Dtest=MyTest" to run a single test called "foo/MyTest.java".
      This parameter overrides the includes/excludes parameters, and the TestNG suiteXmlFiles parameter.

      Attachments

        Issue Links

          Activity

            People

              jdcasey John Dennis Casey
              pekarna Ondra Žižka
              Votes:
              0 Vote for this issue
              Watchers:
              1 Start watching this issue

              Dates

                Created:
                Updated:
                Resolved: