[ 
http://jira.codehaus.org/browse/SUREFIRE-747?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=270578#comment-270578
 ] 

Kristian Rosenvold edited comment on SUREFIRE-747 at 6/16/11 8:48 AM:
----------------------------------------------------------------------

It's the combination of the TestSuite and "methods" parallel that does not 
work. "methods" without the TestSuite works fine (Change include pattern to   
{code}**/Parallel*.java{code} to verify this.



      was (Author: krosenvold):
    It's the combination of the TestSuite and "methods" parallel that does not 
work. "methods" without the TestSuite works fine (Change include pattern to   
**/Parallel*.java to verify this).


  
> Parallel method execution skips Tests
> -------------------------------------
>
>                 Key: SUREFIRE-747
>                 URL: http://jira.codehaus.org/browse/SUREFIRE-747
>             Project: Maven Surefire
>          Issue Type: Bug
>          Components: Junit 4.7+ (parallel) support
>    Affects Versions: 2.8, 2.8.1
>            Reporter: Gili
>            Assignee: Kristian Rosenvold
>
> Here is a simple testcase.
> POM file:
> {code}
>                       <plugin>
>                               <artifactId>maven-surefire-plugin</artifactId>
>                               <version>2.8.2-SNAPSHOT</version>
>                               <configuration>
>                                       <includes>
>                                               
> <include>**/TestSuite.java</include>
>                                       </includes>
>                                       <parallel>methods</parallel>
>                               </configuration>
>                       </plugin>
>               </plugins>
> {code}
> TestSuite.java
> {code}
> import org.junit.runner.RunWith;
> import org.junit.runners.Suite;
> @RunWith(Suite.class)
> @Suite.SuiteClasses(
> {
>       ParallelTest.class,
>       ParallelTest2.class
> })
> public class TestSuite
> {
> }
> {code}
> ParallelTest.java
> {code}
> public class ParallelTest
> {
>       public ParallelTest()
>       {
>               System.out.println("ParallelTest.constructor");
>       }
>       
>       @Before
>       public void setUp()
>       {
>               System.out.println("ParallelTest.setUp");
>       }
>       @After
>       public void tearDown()
>       {
>               System.out.println("ParallelTest.tearDown");
>       }
>       @Test
>       public void first() throws InterruptedException
>       {
>               System.out.println("begin ParallelTest.first");
>               Thread.sleep(1000);
>               System.out.println("end ParallelTest.first");
>       }
>       @Test
>       public void second() throws InterruptedException
>       {
>               System.out.println("begin ParallelTest.second");
>               Thread.sleep(1000);
>               System.out.println("end ParallelTest.second");
>       }
>       @Test
>       public void third() throws InterruptedException
>       {
>               System.out.println("begin ParallelTest.third");
>               Thread.sleep(1000);
>               System.out.println("end ParallelTest.third");
>       }
> }
> {code}
> ParallelTest2.java is identical except that log output contains ParallelTest2 
> instead of ParallelTest.
> Actual Output:
> {quote}
> Concurrency config is parallel='methods', perCoreThreadCount=true, 
> threadCount=2, useUnlimitedThreads=false
> Running com.holdmyspot.health.server.ParallelTest
> ParallelTest.constructor
> ParallelTest.setUp
> begin ParallelTest.first
> end ParallelTest.first
> ParallelTest.tearDown
> Tests run: 1, Failures: 0, Errors: 0, Skipped: 0, Time elapsed: 1.014 sec
> Running com.holdmyspot.health.server.ParallelTest2
> ParallelTest2.constructor
> ParallelTest2.setUp
> begin ParallelTest2.first
> end ParallelTest2.first
> ParallelTest2.tearDown
> Tests run: 1, Failures: 0, Errors: 0, Skipped: 0, Time elapsed: 1.014 sec
> Results :
> Tests run: 2, Failures: 0, Errors: 0, Skipped: 0
> {quote}
> Problem: methods second() and third() are never run for either ParallelTest 
> or ParallelTest2.

--
This message is automatically generated by JIRA.
For more information on JIRA, see: http://www.atlassian.com/software/jira

        

Reply via email to