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

When you <include> a JUnit TestSuite (with no test methods), no tests are run

    XMLWordPrintableJSON

Details

    • Bug
    • Status: Closed
    • Blocker
    • Resolution: Fixed
    • 2.0 (2.2 plugin)
    • 2.3
    • None
    • None

    Description

      In the attached Maven project, I started with the default Maven getting started archetype and then created an AppTestSuite class, which extends TestSuite and defines the static suite() method, but it has no test methods of its own. Then I added an <includes> configuration that specified <includes><include>**/AppTestSuite.java</include></includes>. But when I run "mvn test", it claims that "There are no tests to run."

      I've watched this happening in a debugger. The problem is in surefire-api-2.0.jar in PojoTestSet , on line 249. When attempting to acquire a list of the number of tests to run, instead of invoking the suite method and counting the number of tests that come out, it's attempting to discoverTestMethods on the object (methods whose names begin with "test*"), which naturally won't work for suites.

      This is a really serious issue that's going to block testing for us. (We happen to attach a TestSetup decorator to our suite, so we do need to run these tests as a suite rather than as individual test cases.)

      Attachments

        1. suitebug.zip
          3 kB
          Daniel Fabulich
        2. MSUREFIRE-113.patch
          2 kB
          Mike Perham
        3. surefire-junit-2.1-SNAPSHOT.jar
          12 kB
          Mike Perham

        Activity

          People

            mperham Mike Perham
            dfabulich Daniel Fabulich
            Votes:
            1 Vote for this issue
            Watchers:
            0 Start watching this issue

            Dates

              Created:
              Updated:
              Resolved: