You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@maven.apache.org by ti...@apache.org on 2020/06/22 22:43:17 UTC

[maven-surefire] branch master updated (ebb81f5 -> a11f4b1)

This is an automated email from the ASF dual-hosted git repository.

tibordigana pushed a change to branch master
in repository https://gitbox.apache.org/repos/asf/maven-surefire.git.


    from ebb81f5  [SUREFIRE-1806] process-communication.vm -> process-communication.apt.vm
     new 5b0b8e8  using ParallelParameterized instead of junit's Parameterized
     new 5cbdb75  two integration tests did not have the postfix "IT"
     new 2ea3af0  fixed expected value in assertions
     new bc86e1b  removed unnecessary <type>jar</type> in integration test
     new b925ea5  removed unnecessary junit5 versions 5.3.0, 5.4.0, 5.5.0 in the ITs
     new b73edf6  [GH] optimized exec time by splitting in two Windows containers
     new a11f4b1  [SUREFIRE-1807] Shadefire should not duplicate entries in Provider SPI

The 7 revisions listed above as "new" are entirely new to this
repository and will be described in separate emails.  The revisions
listed as "add" were already present in the repository and have only
been added to this reference.


Summary of changes:
 .../{smoketest.yml => maven-windows-it1.yml}       |   6 +-
 .../workflows/{maven.yml => maven-windows-it2.yml} |  17 +-
 .github/workflows/maven.yml                        |   4 +-
 surefire-its/pom.xml                               | 619 +++++++++++++++++++--
 .../its/CheckTestNgListenerReporterIT.java         |   4 +-
 .../apache/maven/surefire/its/ConsoleOutputIT.java |   4 +-
 .../its/JUnit47RerunFailingTestWithCucumberIT.java |   4 +-
 .../maven/surefire/its/JUnit4VersionsIT.java       |   4 +-
 .../maven/surefire/its/JUnitPlatformEnginesIT.java |   4 +-
 .../apache/maven/surefire/its/JUnitPlatformIT.java |   9 +-
 .../its/JUnitPlatformRerunFailingTestsIT.java      |   2 +-
 .../maven/surefire/its/TestMethodPatternIT.java    |   4 +-
 .../its/TestMultipleMethodPatternsTestNGIT.java    |   4 +-
 ...er.java => Surefire1095NpeInRunListenerIT.java} |   2 +-
 ...Surefire1146RerunFailedAndParameterizedIT.java} |  25 +-
 .../its/jiras/Surefire1158RemoveInfoLinesIT.java   |   4 +-
 .../Surefire1295AttributeJvmCrashesToTestsIT.java  |   4 +-
 ...Surefire946KillMainProcessInReusableForkIT.java |   4 +-
 .../src/test/resources/crash-during-test/pom.xml   |   1 -
 ...he.maven.surefire.api.provider.SurefireProvider |  19 -
 20 files changed, 626 insertions(+), 118 deletions(-)
 copy .github/workflows/{smoketest.yml => maven-windows-it1.yml} (85%)
 copy .github/workflows/{maven.yml => maven-windows-it2.yml} (69%)
 rename surefire-its/src/test/java/org/apache/maven/surefire/its/jiras/{Surefire1095NpeInRunListener.java => Surefire1095NpeInRunListenerIT.java} (98%)
 rename surefire-its/src/test/java/org/apache/maven/surefire/its/jiras/{Surefire1146RerunFailedAndParameterized.java => Surefire1146RerunFailedAndParameterizedIT.java} (68%)
 delete mode 100644 surefire-shadefire/src/main/resources/META-INF/services/org.apache.maven.surefire.api.provider.SurefireProvider


[maven-surefire] 02/07: two integration tests did not have the postfix "IT"

Posted by ti...@apache.org.
This is an automated email from the ASF dual-hosted git repository.

tibordigana pushed a commit to branch master
in repository https://gitbox.apache.org/repos/asf/maven-surefire.git

commit 5cbdb7512908278c1daf3e1404e125d33e25d9d9
Author: tibordigana <ti...@apache.org>
AuthorDate: Sun Jun 21 12:37:48 2020 +0200

    two integration tests did not have the postfix "IT"
---
 ...ire1095NpeInRunListener.java => Surefire1095NpeInRunListenerIT.java} | 2 +-
 ...arameterized.java => Surefire1146RerunFailedAndParameterizedIT.java} | 2 +-
 2 files changed, 2 insertions(+), 2 deletions(-)

diff --git a/surefire-its/src/test/java/org/apache/maven/surefire/its/jiras/Surefire1095NpeInRunListener.java b/surefire-its/src/test/java/org/apache/maven/surefire/its/jiras/Surefire1095NpeInRunListenerIT.java
similarity index 98%
rename from surefire-its/src/test/java/org/apache/maven/surefire/its/jiras/Surefire1095NpeInRunListener.java
rename to surefire-its/src/test/java/org/apache/maven/surefire/its/jiras/Surefire1095NpeInRunListenerIT.java
index d120d41..91df0af 100644
--- a/surefire-its/src/test/java/org/apache/maven/surefire/its/jiras/Surefire1095NpeInRunListener.java
+++ b/surefire-its/src/test/java/org/apache/maven/surefire/its/jiras/Surefire1095NpeInRunListenerIT.java
@@ -45,7 +45,7 @@ import org.junit.Test;
  * @see <a href="https://issues.apache.org/jira/browse/SUREFIRE-1095}"/>
  * @since 2.18
  */
-public final class Surefire1095NpeInRunListener
+public final class Surefire1095NpeInRunListenerIT
     extends SurefireJUnit4IntegrationTestCase
 {
 
diff --git a/surefire-its/src/test/java/org/apache/maven/surefire/its/jiras/Surefire1146RerunFailedAndParameterized.java b/surefire-its/src/test/java/org/apache/maven/surefire/its/jiras/Surefire1146RerunFailedAndParameterizedIT.java
similarity index 98%
rename from surefire-its/src/test/java/org/apache/maven/surefire/its/jiras/Surefire1146RerunFailedAndParameterized.java
rename to surefire-its/src/test/java/org/apache/maven/surefire/its/jiras/Surefire1146RerunFailedAndParameterizedIT.java
index 3a5fa8c..4840762 100644
--- a/surefire-its/src/test/java/org/apache/maven/surefire/its/jiras/Surefire1146RerunFailedAndParameterized.java
+++ b/surefire-its/src/test/java/org/apache/maven/surefire/its/jiras/Surefire1146RerunFailedAndParameterizedIT.java
@@ -26,7 +26,7 @@ import org.junit.Test;
 /**
  * @see <a href="https://issues.apache.org/jira/browse/SUREFIRE-1146">SUREFIRE-1146</a>
  */
-public class Surefire1146RerunFailedAndParameterized
+public class Surefire1146RerunFailedAndParameterizedIT
     extends SurefireJUnit4IntegrationTestCase
 {
     


[maven-surefire] 07/07: [SUREFIRE-1807] Shadefire should not duplicate entries in Provider SPI

Posted by ti...@apache.org.
This is an automated email from the ASF dual-hosted git repository.

tibordigana pushed a commit to branch master
in repository https://gitbox.apache.org/repos/asf/maven-surefire.git

commit a11f4b186497885b6c5462d3e6932ff9cb43ad88
Author: tibordigana <ti...@apache.org>
AuthorDate: Mon Jun 22 22:52:12 2020 +0200

    [SUREFIRE-1807] Shadefire should not duplicate entries in Provider SPI
---
 ...pache.maven.surefire.api.provider.SurefireProvider | 19 -------------------
 1 file changed, 19 deletions(-)

diff --git a/surefire-shadefire/src/main/resources/META-INF/services/org.apache.maven.surefire.api.provider.SurefireProvider b/surefire-shadefire/src/main/resources/META-INF/services/org.apache.maven.surefire.api.provider.SurefireProvider
deleted file mode 100644
index 1445853..0000000
--- a/surefire-shadefire/src/main/resources/META-INF/services/org.apache.maven.surefire.api.provider.SurefireProvider
+++ /dev/null
@@ -1,19 +0,0 @@
-#
-# Licensed to the Apache Software Foundation (ASF) under one
-# or more contributor license agreements.  See the NOTICE file
-# distributed with this work for additional information
-# regarding copyright ownership.  The ASF licenses this file
-# to you under the Apache License, Version 2.0 (the
-# "License"); you may not use this file except in compliance
-# with the License.  You may obtain a copy of the License at
-#
-#     http://www.apache.org/licenses/LICENSE-2.0
-#
-# Unless required by applicable law or agreed to in writing,
-# software distributed under the License is distributed on an
-# "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
-# KIND, either express or implied.  See the License for the
-# specific language governing permissions and limitations
-# under the License.
-#
-org.apache.maven.shadefire.surefire.junit.JUnit3Provider


[maven-surefire] 04/07: removed unnecessary jar in integration test

Posted by ti...@apache.org.
This is an automated email from the ASF dual-hosted git repository.

tibordigana pushed a commit to branch master
in repository https://gitbox.apache.org/repos/asf/maven-surefire.git

commit bc86e1b184081634f0143f5a430a07e26472a512
Author: tibordigana <ti...@apache.org>
AuthorDate: Tue Jun 23 00:22:13 2020 +0200

    removed unnecessary <type>jar</type> in integration test
---
 surefire-its/src/test/resources/crash-during-test/pom.xml | 1 -
 1 file changed, 1 deletion(-)

diff --git a/surefire-its/src/test/resources/crash-during-test/pom.xml b/surefire-its/src/test/resources/crash-during-test/pom.xml
index 8dd83ec..66f3fce 100644
--- a/surefire-its/src/test/resources/crash-during-test/pom.xml
+++ b/surefire-its/src/test/resources/crash-during-test/pom.xml
@@ -46,7 +46,6 @@
       <artifactId>crashjvm</artifactId>
       <version>1.0</version>
       <scope>test</scope>
-      <type>jar</type>
     </dependency>
   </dependencies>
 


[maven-surefire] 06/07: [GH] optimized exec time by splitting in two Windows containers

Posted by ti...@apache.org.
This is an automated email from the ASF dual-hosted git repository.

tibordigana pushed a commit to branch master
in repository https://gitbox.apache.org/repos/asf/maven-surefire.git

commit b73edf66abfbee38ab9ac37b68c67f2579541d2c
Author: tibordigana <ti...@apache.org>
AuthorDate: Tue Jun 23 00:33:27 2020 +0200

    [GH] optimized exec time by splitting in two Windows containers
---
 .github/workflows/{maven.yml => maven-windows-it1.yml} | 12 +++---------
 .github/workflows/{maven.yml => maven-windows-it2.yml} | 17 +++++++----------
 .github/workflows/maven.yml                            |  4 ++--
 3 files changed, 12 insertions(+), 21 deletions(-)

diff --git a/.github/workflows/maven.yml b/.github/workflows/maven-windows-it1.yml
similarity index 85%
copy from .github/workflows/maven.yml
copy to .github/workflows/maven-windows-it1.yml
index 1cfd2e3..4679153 100644
--- a/.github/workflows/maven.yml
+++ b/.github/workflows/maven-windows-it1.yml
@@ -15,19 +15,13 @@
 # specific language governing permissions and limitations
 # under the License.
 
-name: GitHub CI
+name: GitHub CI for Windows 1
 
 on: [push, pull_request]
 
 jobs:
   build:
-
-    strategy:
-      matrix:
-        os: [ubuntu-latest, windows-latest, macOS-latest]
-      fail-fast: false
-
-    runs-on: ${{ matrix.os }}
+    runs-on: windows-latest
 
     steps:
       - name: Checkout
@@ -39,4 +33,4 @@ jobs:
           java-version: 14
 
       - name: Build with Maven
-        run: mvn install -e -B -V -nsu --no-transfer-progress -P run-its
+        run: mvn install -e -B -V -nsu --no-transfer-progress -P run-its "-Dit.test=**/jiras/*IT*.java,TestMethodPatternIT,TestMultipleMethodPatternsIT,TestMultipleMethodPatternsTestNGIT"
diff --git a/.github/workflows/maven.yml b/.github/workflows/maven-windows-it2.yml
similarity index 69%
copy from .github/workflows/maven.yml
copy to .github/workflows/maven-windows-it2.yml
index 1cfd2e3..58a04c1 100644
--- a/.github/workflows/maven.yml
+++ b/.github/workflows/maven-windows-it2.yml
@@ -15,19 +15,13 @@
 # specific language governing permissions and limitations
 # under the License.
 
-name: GitHub CI
+name: GitHub CI for Windows 2
 
 on: [push, pull_request]
 
 jobs:
   build:
-
-    strategy:
-      matrix:
-        os: [ubuntu-latest, windows-latest, macOS-latest]
-      fail-fast: false
-
-    runs-on: ${{ matrix.os }}
+    runs-on: windows-latest
 
     steps:
       - name: Checkout
@@ -38,5 +32,8 @@ jobs:
         with:
           java-version: 14
 
-      - name: Build with Maven
-        run: mvn install -e -B -V -nsu --no-transfer-progress -P run-its
+      - name: Build with Maven with Install
+        run: mvn install -e -B -V -nsu --no-transfer-progress -DskipTests
+
+      - name: Build with Maven without Unit Tests
+        run: mvn install -e -B -V -nsu --no-transfer-progress -rf :surefire-its -P run-its "-Dit.test=!**/jiras/*IT*.java,!TestMethodPatternIT,!TestMultipleMethodPatternsIT,!TestMultipleMethodPatternsTestNGIT"
diff --git a/.github/workflows/maven.yml b/.github/workflows/maven.yml
index 1cfd2e3..d0c9786 100644
--- a/.github/workflows/maven.yml
+++ b/.github/workflows/maven.yml
@@ -15,7 +15,7 @@
 # specific language governing permissions and limitations
 # under the License.
 
-name: GitHub CI
+name: GitHub CI for *Nix
 
 on: [push, pull_request]
 
@@ -24,7 +24,7 @@ jobs:
 
     strategy:
       matrix:
-        os: [ubuntu-latest, windows-latest, macOS-latest]
+        os: [ubuntu-latest, macOS-latest]
       fail-fast: false
 
     runs-on: ${{ matrix.os }}


[maven-surefire] 01/07: using ParallelParameterized instead of junit's Parameterized

Posted by ti...@apache.org.
This is an automated email from the ASF dual-hosted git repository.

tibordigana pushed a commit to branch master
in repository https://gitbox.apache.org/repos/asf/maven-surefire.git

commit 5b0b8e8b9f7e71f9a18a43876ebd0329d37995f4
Author: tibordigana <ti...@apache.org>
AuthorDate: Tue Jun 23 00:17:16 2020 +0200

    using ParallelParameterized instead of junit's Parameterized
---
 surefire-its/pom.xml                               | 643 +++++++++++++++++++--
 .../its/CheckTestNgListenerReporterIT.java         |   4 +-
 .../apache/maven/surefire/its/ConsoleOutputIT.java |   4 +-
 .../its/JUnit47RerunFailingTestWithCucumberIT.java |   4 +-
 .../maven/surefire/its/JUnit4VersionsIT.java       |   4 +-
 .../maven/surefire/its/JUnitPlatformEnginesIT.java |   4 +-
 .../apache/maven/surefire/its/JUnitPlatformIT.java |   4 +-
 .../maven/surefire/its/TestMethodPatternIT.java    |   4 +-
 .../its/TestMultipleMethodPatternsTestNGIT.java    |   4 +-
 .../its/jiras/Surefire1158RemoveInfoLinesIT.java   |   4 +-
 .../Surefire1295AttributeJvmCrashesToTestsIT.java  |   4 +-
 ...Surefire946KillMainProcessInReusableForkIT.java |   4 +-
 12 files changed, 616 insertions(+), 71 deletions(-)

diff --git a/surefire-its/pom.xml b/surefire-its/pom.xml
index 60fb786..cd5cd5c 100644
--- a/surefire-its/pom.xml
+++ b/surefire-its/pom.xml
@@ -164,55 +164,6 @@
                 </configuration>
             </plugin>
             <plugin>
-                <artifactId>maven-failsafe-plugin</artifactId>
-                <version>3.0.0-M4</version> <!-- ${shadedVersion}, but resolved due to https://issues.apache.org/jira/browse/MRELEASE-799 -->
-                <configuration>
-                    <skipTests>${skipTests}</skipTests>
-                    <jvm>${jdk.home}/bin/java</jvm>
-                    <runOrder>alphabetical</runOrder>
-                    <threadCount>1</threadCount>
-                    <perCoreThreadCount>false</perCoreThreadCount>
-                    <forkMode>once</forkMode>
-                    <argLine>-server -Xmx64m -XX:+UseG1GC -XX:+TieredCompilation -XX:TieredStopAtLevel=1 -Djava.awt.headless=true -Djdk.net.URLClassPath.disableClassPathURLCheck=true</argLine>
-                    <includes>
-                        <include>org/apache/**/*IT*.java</include>
-                    </includes>
-                    <!-- Pass current surefire version to the main suite so that it -->
-                    <!-- can forward to all integration test projects. SUREFIRE-513 -->
-                    <systemPropertyVariables>
-                        <surefire.version>${project.version}</surefire.version>
-                        <maven.home>${maven.home}</maven.home>
-                        <maven.settings.file>${project.build.directory}/private/settings.xml</maven.settings.file>
-                        <maven.toolchains.file>${project.build.directory}/private/toolchains.xml</maven.toolchains.file>
-                        <maven.test.tmpdir>${project.build.directory}</maven.test.tmpdir>
-                        <verifier.forkMode>forked</verifier.forkMode>
-                        <jdk.home>${jdk.home}</jdk.home>
-                        <jacoco.agent>${jacoco-it.agent}</jacoco.agent>
-
-                        <!-- see the f/w com.googlecode.junit-toolbox:junit-toolbox -->
-                        <maxParallelTestThreads>3</maxParallelTestThreads>
-                    </systemPropertyVariables>
-                    <redirectTestOutputToFile>true</redirectTestOutputToFile>
-                    <enableProcessChecker>native</enableProcessChecker>
-                    <shutdown>kill</shutdown>
-                </configuration>
-                <dependencies>
-                    <dependency>
-                        <groupId>org.apache.maven.surefire</groupId>
-                        <artifactId>surefire-junit47</artifactId>
-                        <version>3.0.0-M4</version> <!-- ${shadedVersion}, but resolved due to https://issues.apache.org/jira/browse/MRELEASE-799 -->
-                    </dependency>
-                </dependencies>
-                <executions>
-                    <execution>
-                        <goals>
-                            <goal>integration-test</goal>
-                            <goal>verify</goal>
-                        </goals>
-                    </execution>
-                </executions>
-            </plugin>
-            <plugin>
                 <groupId>org.jacoco</groupId>
                 <artifactId>jacoco-maven-plugin</artifactId>
                 <executions>
@@ -247,4 +198,598 @@
             </plugin>
         </plugins>
     </build>
+    <profiles>
+        <profile>
+            <id>run-its</id>
+            <build>
+                <plugins>
+                    <plugin>
+                        <groupId>org.apache.maven.plugins</groupId>
+                        <artifactId>maven-dependency-plugin</artifactId>
+                        <executions>
+                            <execution>
+                                <id>testng-4.7</id>
+                                <phase>pre-integration-test</phase>
+                                <goals><goal>get</goal></goals>
+                                <configuration><artifact>org.testng:testng:4.7:jar:jdk15</artifact></configuration>
+                            </execution>
+                            <execution>
+                                <id>testng-5.0.2</id>
+                                <phase>pre-integration-test</phase>
+                                <goals><goal>get</goal></goals>
+                                <configuration><artifact>org.testng:testng:5.0.2:jar:jdk15</artifact></configuration>
+                            </execution>
+                            <execution>
+                                <id>testng-5.1</id>
+                                <phase>pre-integration-test</phase>
+                                <goals><goal>get</goal></goals>
+                                <configuration><artifact>org.testng:testng:5.1:jar:jdk15</artifact></configuration>
+                            </execution>
+                            <execution>
+                                <id>testng-5.5</id>
+                                <phase>pre-integration-test</phase>
+                                <goals><goal>get</goal></goals>
+                                <configuration><artifact>org.testng:testng:5.5:jar:jdk15</artifact></configuration>
+                            </execution>
+                            <execution>
+                                <id>testng-5.6</id>
+                                <phase>pre-integration-test</phase>
+                                <goals><goal>get</goal></goals>
+                                <configuration><artifact>org.testng:testng:5.6:jar:jdk15</artifact></configuration>
+                            </execution>
+                            <execution>
+                                <id>testng-5.7-jdk14</id>
+                                <phase>pre-integration-test</phase>
+                                <goals><goal>get</goal></goals>
+                                <configuration><artifact>org.testng:testng:5.7:jar:jdk14</artifact></configuration>
+                            </execution>
+                            <execution>
+                                <id>testng-5.7-jdk15</id>
+                                <phase>pre-integration-test</phase>
+                                <goals><goal>get</goal></goals>
+                                <configuration><artifact>org.testng:testng:5.7:jar:jdk15</artifact></configuration>
+                            </execution>
+                            <execution>
+                                <id>testng-5.8-jdk15</id>
+                                <phase>pre-integration-test</phase>
+                                <goals><goal>get</goal></goals>
+                                <configuration><artifact>org.testng:testng:5.8:jar:jdk15</artifact></configuration>
+                            </execution>
+                            <execution>
+                                <id>testng-5.9-jdk15</id>
+                                <phase>pre-integration-test</phase>
+                                <goals><goal>get</goal></goals>
+                                <configuration><artifact>org.testng:testng:5.9:jar:jdk15</artifact></configuration>
+                            </execution>
+                            <execution>
+                                <id>testng-5.10-jdk15</id>
+                                <phase>pre-integration-test</phase>
+                                <goals><goal>get</goal></goals>
+                                <configuration><artifact>org.testng:testng:5.10:jar:jdk15</artifact></configuration>
+                            </execution>
+                            <execution>
+                                <id>testng-5.12.1</id>
+                                <phase>pre-integration-test</phase>
+                                <goals><goal>get</goal></goals>
+                                <configuration><artifact>org.testng:testng:5.12.1</artifact></configuration>
+                            </execution>
+                            <execution>
+                                <id>testng-5.13</id>
+                                <phase>pre-integration-test</phase>
+                                <goals><goal>get</goal></goals>
+                                <configuration><artifact>org.testng:testng:5.13</artifact></configuration>
+                            </execution>
+                            <execution>
+                                <id>testng-5.13.1</id>
+                                <phase>pre-integration-test</phase>
+                                <goals><goal>get</goal></goals>
+                                <configuration><artifact>org.testng:testng:5.13.1</artifact></configuration>
+                            </execution>
+                            <execution>
+                                <id>testng-14</id>
+                                <phase>pre-integration-test</phase>
+                                <goals><goal>get</goal></goals>
+                                <configuration><artifact>org.testng:testng:5.14</artifact></configuration>
+                            </execution><execution>
+                                <id>testng-5.14.1</id>
+                                <phase>pre-integration-test</phase>
+                                <goals><goal>get</goal></goals>
+                                <configuration><artifact>org.testng:testng:5.14.1</artifact></configuration>
+                            </execution>
+                            <execution>
+                                <id>testng-5.14.2</id>
+                                <phase>pre-integration-test</phase>
+                                <goals><goal>get</goal></goals>
+                                <configuration><artifact>org.testng:testng:5.14.2</artifact></configuration>
+                            </execution>
+                            <execution>
+                                <id>testng-5.14.6</id>
+                                <phase>pre-integration-test</phase>
+                                <goals><goal>get</goal></goals>
+                                <configuration><artifact>org.testng:testng:5.14.6</artifact></configuration>
+                            </execution>
+                            <execution>
+                                <id>testng-5.14.9</id>
+                                <phase>pre-integration-test</phase>
+                                <goals><goal>get</goal></goals>
+                                <configuration><artifact>org.testng:testng:5.14.9</artifact></configuration>
+                            </execution>
+                            <execution>
+                                <id>testng-6</id>
+                                <phase>pre-integration-test</phase>
+                                <goals><goal>get</goal></goals>
+                                <configuration><artifact>org.testng:testng:6.0</artifact></configuration>
+                            </execution>
+                            <execution>
+                                <id>testng-6.5.1</id>
+                                <phase>pre-integration-test</phase>
+                                <goals><goal>get</goal></goals>
+                                <configuration><artifact>org.testng:testng:6.5.1</artifact></configuration>
+                            </execution>
+                            <execution>
+                                <id>testng-6.8</id>
+                                <phase>pre-integration-test</phase>
+                                <goals><goal>get</goal></goals>
+                                <configuration><artifact>org.testng:testng:6.8</artifact></configuration>
+                            </execution>
+                            <execution>
+                                <id>testng-6.8.5</id>
+                                <phase>pre-integration-test</phase>
+                                <goals><goal>get</goal></goals>
+                                <configuration><artifact>org.testng:testng:6.8.5</artifact></configuration>
+                            </execution>
+                            <execution>
+                                <id>testng-6.8.7</id>
+                                <phase>pre-integration-test</phase>
+                                <goals><goal>get</goal></goals>
+                                <configuration><artifact>org.testng:testng:6.8.7</artifact></configuration>
+                            </execution>
+                            <execution>
+                                <id>testng-6.8.8</id>
+                                <phase>pre-integration-test</phase>
+                                <goals><goal>get</goal></goals>
+                                <configuration><artifact>org.testng:testng:6.8.8</artifact></configuration>
+                            </execution>
+                            <execution>
+                                <id>testng-6.8.21</id>
+                                <phase>pre-integration-test</phase>
+                                <goals><goal>get</goal></goals>
+                                <configuration><artifact>org.testng:testng:6.8.21</artifact></configuration>
+                            </execution>
+                            <execution>
+                                <id>testng-6.9.4</id>
+                                <phase>pre-integration-test</phase>
+                                <goals><goal>get</goal></goals>
+                                <configuration><artifact>org.testng:testng:6.9.4</artifact></configuration>
+                            </execution>
+                            <execution>
+                                <id>testng-6.9.8</id>
+                                <phase>pre-integration-test</phase>
+                                <goals><goal>get</goal></goals>
+                                <configuration><artifact>org.testng:testng:6.9.8</artifact></configuration>
+                            </execution>
+                            <execution>
+                                <id>testng-6.11</id>
+                                <phase>pre-integration-test</phase>
+                                <goals><goal>get</goal></goals>
+                                <configuration><artifact>org.testng:testng:6.11</artifact></configuration>
+                            </execution>
+                            <execution>
+                                <id>testng-6.13.1</id>
+                                <phase>pre-integration-test</phase>
+                                <goals><goal>get</goal></goals>
+                                <configuration><artifact>org.testng:testng:6.13.1</artifact></configuration>
+                            </execution>
+                            <execution>
+                                <id>testng-6.14.3</id>
+                                <phase>pre-integration-test</phase>
+                                <goals><goal>get</goal></goals>
+                                <configuration><artifact>org.testng:testng:6.14.3</artifact></configuration>
+                            </execution>
+                            <execution>
+                                <id>testng-7</id>
+                                <phase>pre-integration-test</phase>
+                                <goals><goal>get</goal></goals>
+                                <configuration><artifact>org.testng:testng:7.0.0</artifact></configuration>
+                            </execution>
+                            <execution>
+                                <id>testng-7.1</id>
+                                <phase>pre-integration-test</phase>
+                                <goals><goal>get</goal></goals>
+                                <configuration><artifact>org.testng:testng:7.1.0</artifact></configuration>
+                            </execution>
+                            <execution>
+                                <id>guice</id>
+                                <phase>pre-integration-test</phase>
+                                <goals><goal>get</goal></goals>
+                                <configuration><artifact>com.google.inject:guice:3.0:jar:no_aop</artifact></configuration>
+                            </execution>
+                            <execution>
+                                <id>log4j</id>
+                                <phase>pre-integration-test</phase>
+                                <goals><goal>get</goal></goals>
+                                <configuration><artifact>log4j:log4j:1.2.16</artifact></configuration>
+                            </execution>
+                            <execution>
+                                <id>maven-compiler-plugin-2.3.2</id>
+                                <phase>pre-integration-test</phase>
+                                <goals><goal>get</goal></goals>
+                                <configuration><artifact>org.apache.maven.plugins:maven-compiler-plugin:2.3.2</artifact></configuration>
+                            </execution>
+                            <execution>
+                                <id>maven-compiler-plugin-2.5.1</id>
+                                <phase>pre-integration-test</phase>
+                                <goals><goal>get</goal></goals>
+                                <configuration><artifact>org.apache.maven.plugins:maven-compiler-plugin:2.5.1</artifact></configuration>
+                            </execution>
+                            <execution>
+                                <id>maven-compiler-plugin-3.7.0</id>
+                                <phase>pre-integration-test</phase>
+                                <goals><goal>get</goal></goals>
+                                <configuration><artifact>org.apache.maven.plugins:maven-compiler-plugin:3.7.0</artifact></configuration>
+                            </execution>
+                            <execution>
+                                <id>maven-compiler-plugin-3.8.0</id>
+                                <phase>pre-integration-test</phase>
+                                <goals><goal>get</goal></goals>
+                                <configuration><artifact>org.apache.maven.plugins:maven-compiler-plugin:3.8.0</artifact></configuration>
+                            </execution>
+                            <execution>
+                                <id>maven-compiler-plugin-3.8.1</id>
+                                <phase>pre-integration-test</phase>
+                                <goals><goal>get</goal></goals>
+                                <configuration><artifact>org.apache.maven.plugins:maven-compiler-plugin:3.8.1</artifact></configuration>
+                            </execution>
+                            <execution>
+                                <id>commons</id>
+                                <phase>pre-integration-test</phase>
+                                <goals><goal>get</goal></goals>
+                                <configuration><artifact>org.apache.commons:commons-email:1.2</artifact></configuration>
+                            </execution>
+                            <execution>
+                                <id>helper</id>
+                                <phase>pre-integration-test</phase>
+                                <goals><goal>get</goal></goals>
+                                <configuration><artifact>org.codehaus.mojo:build-helper-maven-plugin:3.0.0</artifact></configuration>
+                            </execution>
+                            <execution>
+                                <id>junit-4</id>
+                                <phase>pre-integration-test</phase>
+                                <goals><goal>get</goal></goals>
+                                <configuration><artifact>junit:junit:4.0</artifact></configuration>
+                            </execution>
+                            <execution>
+                                <id>junit-4.1</id>
+                                <phase>pre-integration-test</phase>
+                                <goals><goal>get</goal></goals>
+                                <configuration><artifact>junit:junit:4.1</artifact></configuration>
+                            </execution>
+                            <execution>
+                                <id>junit-4.2</id>
+                                <phase>pre-integration-test</phase>
+                                <goals><goal>get</goal></goals>
+                                <configuration><artifact>junit:junit:4.2</artifact></configuration>
+                            </execution>
+                            <execution>
+                                <id>junit-4.3</id>
+                                <phase>pre-integration-test</phase>
+                                <goals><goal>get</goal></goals>
+                                <configuration><artifact>junit:junit:4.3</artifact></configuration>
+                            </execution>
+                            <execution>
+                                <id>junit-4.4</id>
+                                <phase>pre-integration-test</phase>
+                                <goals><goal>get</goal></goals>
+                                <configuration><artifact>junit:junit:4.4</artifact></configuration>
+                            </execution>
+                            <execution>
+                                <id>junit-4.5</id>
+                                <phase>pre-integration-test</phase>
+                                <goals><goal>get</goal></goals>
+                                <configuration><artifact>junit:junit:4.5</artifact></configuration>
+                            </execution>
+                            <execution>
+                                <id>junit-4.6</id>
+                                <phase>pre-integration-test</phase>
+                                <goals><goal>get</goal></goals>
+                                <configuration><artifact>junit:junit:4.6</artifact></configuration>
+                            </execution>
+                            <execution>
+                                <id>junit-4.7</id>
+                                <phase>pre-integration-test</phase>
+                                <goals><goal>get</goal></goals>
+                                <configuration><artifact>junit:junit:4.7</artifact></configuration>
+                            </execution>
+                            <execution>
+                                <id>junit-4.8.1</id>
+                                <phase>pre-integration-test</phase>
+                                <goals><goal>get</goal></goals>
+                                <configuration><artifact>junit:junit:4.8.1</artifact></configuration>
+                            </execution>
+                            <execution>
+                                <id>junit-4.8.2</id>
+                                <phase>pre-integration-test</phase>
+                                <goals><goal>get</goal></goals>
+                                <configuration><artifact>junit:junit:4.8.2</artifact></configuration>
+                            </execution>
+                            <execution>
+                                <id>junit-4.9</id>
+                                <phase>pre-integration-test</phase>
+                                <goals><goal>get</goal></goals>
+                                <configuration><artifact>junit:junit:4.9</artifact></configuration>
+                            </execution>
+                            <execution>
+                                <id>junit-4.10</id>
+                                <phase>pre-integration-test</phase>
+                                <goals><goal>get</goal></goals>
+                                <configuration><artifact>junit:junit:4.10</artifact></configuration>
+                            </execution>
+                            <execution>
+                                <id>junit-4.11</id>
+                                <phase>pre-integration-test</phase>
+                                <goals><goal>get</goal></goals>
+                                <configuration><artifact>junit:junit:4.11</artifact></configuration>
+                            </execution>
+                            <execution>
+                                <id>junit-4.12</id>
+                                <phase>pre-integration-test</phase>
+                                <goals><goal>get</goal></goals>
+                                <configuration><artifact>junit:junit:4.12</artifact></configuration>
+                            </execution>
+                            <execution>
+                                <id>junit-4.13</id>
+                                <phase>pre-integration-test</phase>
+                                <goals><goal>get</goal></goals>
+                                <configuration><artifact>junit:junit:4.13</artifact></configuration>
+                            </execution>
+                            <execution>
+                                <id>junit-dep-4.4</id>
+                                <phase>pre-integration-test</phase>
+                                <goals><goal>get</goal></goals>
+                                <configuration><artifact>junit:junit-dep:4.4</artifact></configuration>
+                            </execution>
+                            <execution>
+                                <id>junit-dep-4.7</id>
+                                <phase>pre-integration-test</phase>
+                                <goals><goal>get</goal></goals>
+                                <configuration><artifact>junit:junit-dep:4.7</artifact></configuration>
+                            </execution>
+                            <execution>
+                                <id>junit-dep-4.8</id>
+                                <phase>pre-integration-test</phase>
+                                <goals><goal>get</goal></goals>
+                                <configuration><artifact>junit:junit-dep:4.8</artifact></configuration>
+                            </execution>
+                            <execution>
+                                <id>2</id>
+                                <phase>pre-integration-test</phase>
+                                <goals><goal>get</goal></goals>
+                                <configuration><artifact>org.apache.maven.plugins:maven-surefire-plugin:2.10</artifact></configuration>
+                            </execution>
+                            <execution>
+                                <id>plexus</id>
+                                <phase>pre-integration-test</phase>
+                                <goals><goal>get</goal></goals>
+                                <configuration><artifact>org.codehaus.plexus:plexus-utils:1.0.4</artifact></configuration>
+                            </execution>
+                            <execution>
+                                <id>mockito-1.8.1</id>
+                                <phase>pre-integration-test</phase>
+                                <goals><goal>get</goal></goals>
+                                <configuration><artifact>org.mockito:mockito-core:1.8.1</artifact></configuration>
+                            </execution>
+                            <execution>
+                                <id>mockito-1.8.5</id>
+                                <phase>pre-integration-test</phase>
+                                <goals><goal>get</goal></goals>
+                                <configuration><artifact>org.mockito:mockito-core:1.8.5</artifact></configuration>
+                            </execution>
+                            <execution>
+                                <id>hamcrest</id>
+                                <phase>pre-integration-test</phase>
+                                <goals><goal>get</goal></goals>
+                                <configuration><artifact>org.hamcrest:hamcrest-core:1.2.1</artifact></configuration>
+                            </execution>
+                            <execution>
+                                <id>hamcrest-library</id>
+                                <phase>pre-integration-test</phase>
+                                <goals><goal>get</goal></goals>
+                                <configuration><artifact>org.hamcrest:hamcrest-library:1.3</artifact></configuration>
+                            </execution>
+                            <execution>
+                                <id>fest-assert-core</id>
+                                <phase>pre-integration-test</phase>
+                                <goals><goal>get</goal></goals>
+                                <configuration><artifact>org.easytesting:fest-assert-core:2.0M9</artifact></configuration>
+                            </execution>
+                            <execution>
+                                <id>cucumber-java</id>
+                                <phase>pre-integration-test</phase>
+                                <goals><goal>get</goal></goals>
+                                <configuration><artifact>io.cucumber:cucumber-java:2.0.0</artifact></configuration>
+                            </execution>
+                            <execution>
+                                <id>cucumber-junit</id>
+                                <phase>pre-integration-test</phase>
+                                <goals><goal>get</goal></goals>
+                                <configuration><artifact>io.cucumber:cucumber-junit:2.0.0</artifact></configuration>
+                            </execution>
+                            <execution>
+                                <id>vintage-5.1.1</id>
+                                <phase>pre-integration-test</phase>
+                                <goals><goal>get</goal></goals>
+                                <configuration><artifact>org.junit.vintage:junit-vintage-engine:5.1.1</artifact></configuration>
+                            </execution>
+                            <execution>
+                                <id>vintage-5.2</id>
+                                <phase>pre-integration-test</phase>
+                                <goals><goal>get</goal></goals>
+                                <configuration><artifact>org.junit.vintage:junit-vintage-engine:5.2.0</artifact></configuration>
+                            </execution>
+                            <execution>
+                                <id>vintage-5.3</id>
+                                <phase>pre-integration-test</phase>
+                                <goals><goal>get</goal></goals>
+                                <configuration><artifact>org.junit.vintage:junit-vintage-engine:5.3.0</artifact></configuration>
+                            </execution>
+                            <execution>
+                                <id>vintage-5.3.2</id>
+                                <phase>pre-integration-test</phase>
+                                <goals><goal>get</goal></goals>
+                                <configuration><artifact>org.junit.vintage:junit-vintage-engine:5.3.2</artifact></configuration>
+                            </execution>
+                            <execution>
+                                <id>vintage-5.4</id>
+                                <phase>pre-integration-test</phase>
+                                <goals><goal>get</goal></goals>
+                                <configuration><artifact>org.junit.vintage:junit-vintage-engine:5.4.0</artifact></configuration>
+                            </execution>
+                            <execution>
+                                <id>vintage-5.4.2</id>
+                                <phase>pre-integration-test</phase>
+                                <goals><goal>get</goal></goals>
+                                <configuration><artifact>org.junit.vintage:junit-vintage-engine:5.4.2</artifact></configuration>
+                            </execution>
+                            <execution>
+                                <id>vintage-5.5</id>
+                                <phase>pre-integration-test</phase>
+                                <goals><goal>get</goal></goals>
+                                <configuration><artifact>org.junit.vintage:junit-vintage-engine:5.5.0</artifact></configuration>
+                            </execution>
+                            <execution>
+                                <id>vintage-5.5.2</id>
+                                <phase>pre-integration-test</phase>
+                                <goals><goal>get</goal></goals>
+                                <configuration><artifact>org.junit.vintage:junit-vintage-engine:5.5.2</artifact></configuration>
+                            </execution>
+                            <execution>
+                                <id>vintage-5.6.2</id>
+                                <phase>pre-integration-test</phase>
+                                <goals><goal>get</goal></goals>
+                                <configuration><artifact>org.junit.vintage:junit-vintage-engine:5.6.2</artifact></configuration>
+                            </execution>
+                            <execution>
+                                <id>jupiter-5.0.3</id>
+                                <phase>pre-integration-test</phase>
+                                <goals><goal>get</goal></goals>
+                                <configuration><artifact>org.junit.jupiter:junit-jupiter-engine:5.0.3</artifact></configuration>
+                            </execution>
+                            <execution>
+                                <id>jupiter-5.1.1</id>
+                                <phase>pre-integration-test</phase>
+                                <goals><goal>get</goal></goals>
+                                <configuration><artifact>org.junit.jupiter:junit-jupiter-engine:5.1.1</artifact></configuration>
+                            </execution>
+                            <execution>
+                                <id>jupiter-5.2</id>
+                                <phase>pre-integration-test</phase>
+                                <goals><goal>get</goal></goals>
+                                <configuration><artifact>org.junit.jupiter:junit-jupiter-engine:5.2.0</artifact></configuration>
+                            </execution>
+                            <execution>
+                                <id>jupiter-5.3</id>
+                                <phase>pre-integration-test</phase>
+                                <goals><goal>get</goal></goals>
+                                <configuration><artifact>org.junit.jupiter:junit-jupiter-engine:5.3.0</artifact></configuration>
+                            </execution>
+                            <execution>
+                                <id>jupiter-5.3.2</id>
+                                <phase>pre-integration-test</phase>
+                                <goals><goal>get</goal></goals>
+                                <configuration><artifact>org.junit.jupiter:junit-jupiter-engine:5.3.2</artifact></configuration>
+                            </execution>
+                            <execution>
+                                <id>jupiter-5.4</id>
+                                <phase>pre-integration-test</phase>
+                                <goals><goal>get</goal></goals>
+                                <configuration><artifact>org.junit.jupiter:junit-jupiter-engine:5.4.0</artifact></configuration>
+                            </execution>
+                            <execution>
+                                <id>jupiter-5.4.2</id>
+                                <phase>pre-integration-test</phase>
+                                <goals><goal>get</goal></goals>
+                                <configuration><artifact>org.junit.jupiter:junit-jupiter-engine:5.4.2</artifact></configuration>
+                            </execution>
+                            <execution>
+                                <id>jupiter-5.5</id>
+                                <phase>pre-integration-test</phase>
+                                <goals><goal>get</goal></goals>
+                                <configuration><artifact>org.junit.jupiter:junit-jupiter-engine:5.5.0</artifact></configuration>
+                            </execution>
+                            <execution>
+                                <id>jupiter-5.5.2</id>
+                                <phase>pre-integration-test</phase>
+                                <goals><goal>get</goal></goals>
+                                <configuration><artifact>org.junit.jupiter:junit-jupiter-engine:5.5.2</artifact></configuration>
+                            </execution>
+                            <execution>
+                                <id>jupiter-5.6.2</id>
+                                <phase>pre-integration-test</phase>
+                                <goals><goal>get</goal></goals>
+                                <configuration><artifact>org.junit.jupiter:junit-jupiter-engine:5.6.2</artifact></configuration>
+                            </execution>
+                            <execution>
+                                <id>crashjvm</id>
+                                <phase>pre-integration-test</phase>
+                                <goals><goal>get</goal></goals>
+                                <configuration><artifact>uk.me.mjt:crashjvm:1.0</artifact></configuration>
+                            </execution>
+                        </executions>
+                        <configuration>
+                            <skip>${skipTests}</skip>
+                        </configuration>
+                    </plugin>
+                    <plugin>
+                        <artifactId>maven-failsafe-plugin</artifactId>
+                        <version>3.0.0-M4</version> <!-- ${shadedVersion}, but resolved due to https://issues.apache.org/jira/browse/MRELEASE-799 -->
+                        <configuration>
+                            <skipTests>${skipTests}</skipTests>
+                            <jvm>${jdk.home}/bin/java</jvm>
+                            <runOrder>alphabetical</runOrder>
+                            <threadCount>1</threadCount>
+                            <perCoreThreadCount>false</perCoreThreadCount>
+                            <forkMode>once</forkMode>
+                            <argLine>-server -Xmx64m -XX:+UseG1GC -XX:+TieredCompilation -XX:TieredStopAtLevel=1 -Djava.awt.headless=true -Djdk.net.URLClassPath.disableClassPathURLCheck=true</argLine>
+                            <includes>
+                                <include>org/apache/**/*IT*.java</include>
+                            </includes>
+                            <!-- Pass current surefire version to the main suite so that it -->
+                            <!-- can forward to all integration test projects. SUREFIRE-513 -->
+                            <systemPropertyVariables>
+                                <surefire.version>${project.version}</surefire.version>
+                                <maven.home>${maven.home}</maven.home>
+                                <maven.settings.file>${project.build.directory}/private/settings.xml</maven.settings.file>
+                                <maven.toolchains.file>${project.build.directory}/private/toolchains.xml</maven.toolchains.file>
+                                <maven.test.tmpdir>${project.build.directory}</maven.test.tmpdir>
+                                <verifier.forkMode>forked</verifier.forkMode>
+                                <jdk.home>${jdk.home}</jdk.home>
+                                <jacoco.agent>${jacoco-it.agent}</jacoco.agent>
+
+                                <!-- see the f/w com.googlecode.junit-toolbox:junit-toolbox -->
+                                <maxParallelTestThreads>3</maxParallelTestThreads>
+                            </systemPropertyVariables>
+                            <redirectTestOutputToFile>true</redirectTestOutputToFile>
+                            <enableProcessChecker>native</enableProcessChecker>
+                            <shutdown>kill</shutdown>
+                        </configuration>
+                        <dependencies>
+                            <dependency>
+                                <groupId>org.apache.maven.surefire</groupId>
+                                <artifactId>surefire-junit47</artifactId>
+                                <version>3.0.0-M4</version> <!-- ${shadedVersion}, but resolved due to https://issues.apache.org/jira/browse/MRELEASE-799 -->
+                            </dependency>
+                        </dependencies>
+                        <executions>
+                            <execution>
+                                <goals>
+                                    <goal>integration-test</goal>
+                                    <goal>verify</goal>
+                                </goals>
+                            </execution>
+                        </executions>
+                    </plugin>
+                </plugins>
+            </build>
+        </profile>
+    </profiles>
 </project>
diff --git a/surefire-its/src/test/java/org/apache/maven/surefire/its/CheckTestNgListenerReporterIT.java b/surefire-its/src/test/java/org/apache/maven/surefire/its/CheckTestNgListenerReporterIT.java
index 57c89b4..d1595e9 100644
--- a/surefire-its/src/test/java/org/apache/maven/surefire/its/CheckTestNgListenerReporterIT.java
+++ b/surefire-its/src/test/java/org/apache/maven/surefire/its/CheckTestNgListenerReporterIT.java
@@ -19,11 +19,11 @@ package org.apache.maven.surefire.its;
  * under the License.
  */
 
+import com.googlecode.junittoolbox.ParallelParameterized;
 import org.apache.maven.surefire.its.fixture.SurefireJUnit4IntegrationTestCase;
 import org.apache.maven.surefire.its.fixture.SurefireLauncher;
 import org.junit.Test;
 import org.junit.runner.RunWith;
-import org.junit.runners.Parameterized;
 
 import java.util.Arrays;
 import java.util.Collection;
@@ -38,7 +38,7 @@ import static org.junit.runners.Parameterized.Parameters;
  * @author <a href="mailto:dfabulich@apache.org">Dan Fabulich</a>
  * @author <a href="mailto:krosenvold@apache.org">Kristian Rosenvold</a>
  */
-@RunWith( Parameterized.class )
+@RunWith( ParallelParameterized.class )
 @SuppressWarnings( { "checkstyle:magicnumber", "checkstyle:linelength" } )
 public class CheckTestNgListenerReporterIT
     extends SurefireJUnit4IntegrationTestCase
diff --git a/surefire-its/src/test/java/org/apache/maven/surefire/its/ConsoleOutputIT.java b/surefire-its/src/test/java/org/apache/maven/surefire/its/ConsoleOutputIT.java
index 1fd03a5..5931338 100644
--- a/surefire-its/src/test/java/org/apache/maven/surefire/its/ConsoleOutputIT.java
+++ b/surefire-its/src/test/java/org/apache/maven/surefire/its/ConsoleOutputIT.java
@@ -19,13 +19,13 @@ package org.apache.maven.surefire.its;
  * under the License.
  */
 
+import com.googlecode.junittoolbox.ParallelParameterized;
 import org.apache.maven.surefire.its.fixture.OutputValidator;
 import org.apache.maven.surefire.its.fixture.SurefireJUnit4IntegrationTestCase;
 import org.apache.maven.surefire.its.fixture.SurefireLauncher;
 import org.apache.maven.surefire.its.fixture.TestFile;
 import org.junit.Test;
 import org.junit.runner.RunWith;
-import org.junit.runners.Parameterized;
 import org.junit.runners.Parameterized.Parameter;
 import org.junit.runners.Parameterized.Parameters;
 
@@ -40,7 +40,7 @@ import static org.hamcrest.Matchers.equalTo;
  *
  * @author Kristian Rosenvold
  */
-@RunWith( Parameterized.class )
+@RunWith( ParallelParameterized.class )
 public class ConsoleOutputIT
     extends SurefireJUnit4IntegrationTestCase
 {
diff --git a/surefire-its/src/test/java/org/apache/maven/surefire/its/JUnit47RerunFailingTestWithCucumberIT.java b/surefire-its/src/test/java/org/apache/maven/surefire/its/JUnit47RerunFailingTestWithCucumberIT.java
index 888e960..94a33c6 100644
--- a/surefire-its/src/test/java/org/apache/maven/surefire/its/JUnit47RerunFailingTestWithCucumberIT.java
+++ b/surefire-its/src/test/java/org/apache/maven/surefire/its/JUnit47RerunFailingTestWithCucumberIT.java
@@ -19,11 +19,11 @@ package org.apache.maven.surefire.its;
  * under the License.
  */
 
+import com.googlecode.junittoolbox.ParallelParameterized;
 import org.apache.maven.surefire.its.fixture.SurefireJUnit4IntegrationTestCase;
 import org.apache.maven.surefire.its.fixture.SurefireLauncher;
 import org.junit.Test;
 import org.junit.runner.RunWith;
-import org.junit.runners.Parameterized;
 import org.junit.runners.Parameterized.Parameter;
 import org.junit.runners.Parameterized.Parameters;
 
@@ -39,7 +39,7 @@ import static org.hamcrest.Matchers.equalTo;
  *
  * @author mpkorstanje
  */
-@RunWith( Parameterized.class )
+@RunWith( ParallelParameterized.class )
 public class JUnit47RerunFailingTestWithCucumberIT extends SurefireJUnit4IntegrationTestCase
 {
     private static final String LEGACY_FORK_NODE =
diff --git a/surefire-its/src/test/java/org/apache/maven/surefire/its/JUnit4VersionsIT.java b/surefire-its/src/test/java/org/apache/maven/surefire/its/JUnit4VersionsIT.java
index dbf087c..e061ecd 100644
--- a/surefire-its/src/test/java/org/apache/maven/surefire/its/JUnit4VersionsIT.java
+++ b/surefire-its/src/test/java/org/apache/maven/surefire/its/JUnit4VersionsIT.java
@@ -19,11 +19,11 @@ package org.apache.maven.surefire.its;
  * under the License.
  */
 
+import com.googlecode.junittoolbox.ParallelParameterized;
 import org.apache.maven.surefire.its.fixture.SurefireJUnit4IntegrationTestCase;
 import org.apache.maven.surefire.its.fixture.SurefireLauncher;
 import org.junit.Test;
 import org.junit.runner.RunWith;
-import org.junit.runners.Parameterized;
 import org.junit.runners.Parameterized.Parameter;
 
 import java.util.Collection;
@@ -53,7 +53,7 @@ import static org.junit.runners.Parameterized.Parameters;
  *
  * @author <a href="mailto:dfabulich@apache.org">Dan Fabulich</a>
  */
-@RunWith( Parameterized.class )
+@RunWith( ParallelParameterized.class )
 public class JUnit4VersionsIT
     extends SurefireJUnit4IntegrationTestCase
 {
diff --git a/surefire-its/src/test/java/org/apache/maven/surefire/its/JUnitPlatformEnginesIT.java b/surefire-its/src/test/java/org/apache/maven/surefire/its/JUnitPlatformEnginesIT.java
index 2a6ba4e..fbe2b36 100644
--- a/surefire-its/src/test/java/org/apache/maven/surefire/its/JUnitPlatformEnginesIT.java
+++ b/surefire-its/src/test/java/org/apache/maven/surefire/its/JUnitPlatformEnginesIT.java
@@ -19,13 +19,13 @@ package org.apache.maven.surefire.its;
  * under the License.
  */
 
+import com.googlecode.junittoolbox.ParallelParameterized;
 import org.apache.maven.it.VerificationException;
 import org.apache.maven.surefire.its.fixture.OutputValidator;
 import org.apache.maven.surefire.its.fixture.SurefireJUnit4IntegrationTestCase;
 import org.junit.Before;
 import org.junit.Test;
 import org.junit.runner.RunWith;
-import org.junit.runners.Parameterized;
 import org.junit.runners.Parameterized.Parameter;
 import org.junit.runners.Parameterized.Parameters;
 
@@ -47,7 +47,7 @@ import static org.junit.Assume.assumeThat;
 /**
  *
  */
-@RunWith( Parameterized.class )
+@RunWith( ParallelParameterized.class )
 @SuppressWarnings( "checkstyle:magicnumber" )
 public class JUnitPlatformEnginesIT extends SurefireJUnit4IntegrationTestCase
 {
diff --git a/surefire-its/src/test/java/org/apache/maven/surefire/its/JUnitPlatformIT.java b/surefire-its/src/test/java/org/apache/maven/surefire/its/JUnitPlatformIT.java
index e6f5ba3..073cbf9 100644
--- a/surefire-its/src/test/java/org/apache/maven/surefire/its/JUnitPlatformIT.java
+++ b/surefire-its/src/test/java/org/apache/maven/surefire/its/JUnitPlatformIT.java
@@ -19,12 +19,12 @@ package org.apache.maven.surefire.its;
  * under the License.
  */
 
+import com.googlecode.junittoolbox.ParallelParameterized;
 import org.apache.maven.surefire.its.fixture.OutputValidator;
 import org.apache.maven.surefire.its.fixture.SurefireJUnit4IntegrationTestCase;
 import org.junit.Before;
 import org.junit.Test;
 import org.junit.runner.RunWith;
-import org.junit.runners.Parameterized;
 import org.junit.runners.Parameterized.Parameter;
 import org.junit.runners.Parameterized.Parameters;
 
@@ -36,7 +36,7 @@ import static org.apache.maven.surefire.its.fixture.HelperAssertions.assumeJavaV
 /**
  *
  */
-@RunWith( Parameterized.class )
+@RunWith( ParallelParameterized.class )
 @SuppressWarnings( "checkstyle:magicnumber" )
 public class JUnitPlatformIT
         extends SurefireJUnit4IntegrationTestCase
diff --git a/surefire-its/src/test/java/org/apache/maven/surefire/its/TestMethodPatternIT.java b/surefire-its/src/test/java/org/apache/maven/surefire/its/TestMethodPatternIT.java
index ce92aa2..35ff272 100644
--- a/surefire-its/src/test/java/org/apache/maven/surefire/its/TestMethodPatternIT.java
+++ b/surefire-its/src/test/java/org/apache/maven/surefire/its/TestMethodPatternIT.java
@@ -19,12 +19,12 @@ package org.apache.maven.surefire.its;
  * under the License.
  */
 
+import com.googlecode.junittoolbox.ParallelParameterized;
 import org.apache.maven.surefire.its.fixture.OutputValidator;
 import org.apache.maven.surefire.its.fixture.SurefireJUnit4IntegrationTestCase;
 import org.apache.maven.surefire.its.fixture.SurefireLauncher;
 import org.junit.Test;
 import org.junit.runner.RunWith;
-import org.junit.runners.Parameterized;
 import org.junit.runners.Parameterized.Parameter;
 import org.junit.runners.Parameterized.Parameters;
 
@@ -42,7 +42,7 @@ import static org.hamcrest.Matchers.equalTo;
  *
  * @author Olivier Lamy
  */
-@RunWith( Parameterized.class )
+@RunWith( ParallelParameterized.class )
 public class TestMethodPatternIT
     extends SurefireJUnit4IntegrationTestCase
 {
diff --git a/surefire-its/src/test/java/org/apache/maven/surefire/its/TestMultipleMethodPatternsTestNGIT.java b/surefire-its/src/test/java/org/apache/maven/surefire/its/TestMultipleMethodPatternsTestNGIT.java
index 6d8be9b..0ea902e 100644
--- a/surefire-its/src/test/java/org/apache/maven/surefire/its/TestMultipleMethodPatternsTestNGIT.java
+++ b/surefire-its/src/test/java/org/apache/maven/surefire/its/TestMultipleMethodPatternsTestNGIT.java
@@ -19,10 +19,10 @@ package org.apache.maven.surefire.its;
  * under the License.
  */
 
+import com.googlecode.junittoolbox.ParallelParameterized;
 import org.apache.maven.surefire.its.fixture.Settings;
 import org.apache.maven.surefire.its.fixture.SurefireLauncher;
 import org.junit.runner.RunWith;
-import org.junit.runners.Parameterized;
 import org.junit.runners.Parameterized.Parameters;
 
 import java.util.Arrays;
@@ -30,7 +30,7 @@ import java.util.Arrays;
 /**
  * TestNG test project using multiple method patterns, including wildcards in class and method names.
  */
-@RunWith( Parameterized.class )
+@RunWith( ParallelParameterized.class )
 public class TestMultipleMethodPatternsTestNGIT
     extends AbstractTestMultipleMethodPatterns
 {
diff --git a/surefire-its/src/test/java/org/apache/maven/surefire/its/jiras/Surefire1158RemoveInfoLinesIT.java b/surefire-its/src/test/java/org/apache/maven/surefire/its/jiras/Surefire1158RemoveInfoLinesIT.java
index fc0db4c..8fe2d5c 100644
--- a/surefire-its/src/test/java/org/apache/maven/surefire/its/jiras/Surefire1158RemoveInfoLinesIT.java
+++ b/surefire-its/src/test/java/org/apache/maven/surefire/its/jiras/Surefire1158RemoveInfoLinesIT.java
@@ -19,11 +19,11 @@ package org.apache.maven.surefire.its.jiras;
  * under the License.
  */
 
+import com.googlecode.junittoolbox.ParallelParameterized;
 import org.apache.maven.surefire.its.fixture.OutputValidator;
 import org.apache.maven.surefire.its.fixture.SurefireVerifierException;
 import org.junit.Test;
 import org.junit.runner.RunWith;
-import org.junit.runners.Parameterized;
 
 import java.util.ArrayList;
 
@@ -37,7 +37,7 @@ import static org.junit.runners.Parameterized.Parameters;
  * @see <a href="https://issues.apache.org/jira/browse/SUREFIRE-1158">SUREFIRE-1158</a>
  * @since 2.19
  */
-@RunWith( Parameterized.class )
+@RunWith( ParallelParameterized.class )
 public class Surefire1158RemoveInfoLinesIT
 {
 
diff --git a/surefire-its/src/test/java/org/apache/maven/surefire/its/jiras/Surefire1295AttributeJvmCrashesToTestsIT.java b/surefire-its/src/test/java/org/apache/maven/surefire/its/jiras/Surefire1295AttributeJvmCrashesToTestsIT.java
index 50ff20d..e447ab2 100644
--- a/surefire-its/src/test/java/org/apache/maven/surefire/its/jiras/Surefire1295AttributeJvmCrashesToTestsIT.java
+++ b/surefire-its/src/test/java/org/apache/maven/surefire/its/jiras/Surefire1295AttributeJvmCrashesToTestsIT.java
@@ -19,12 +19,12 @@ package org.apache.maven.surefire.its.jiras;
  * under the License.
  */
 
+import com.googlecode.junittoolbox.ParallelParameterized;
 import org.apache.maven.surefire.its.fixture.OutputValidator;
 import org.apache.maven.surefire.its.fixture.SurefireJUnit4IntegrationTestCase;
 import org.apache.maven.surefire.its.fixture.SurefireLauncher;
 import org.junit.Test;
 import org.junit.runner.RunWith;
-import org.junit.runners.Parameterized;
 import org.junit.runners.Parameterized.Parameter;
 import org.junit.runners.Parameterized.Parameters;
 
@@ -49,7 +49,7 @@ import static org.junit.Assume.assumeTrue;
  * @author michaeltandy
  * @since 2.20
  */
-@RunWith( Parameterized.class )
+@RunWith( ParallelParameterized.class )
 public class Surefire1295AttributeJvmCrashesToTestsIT
         extends SurefireJUnit4IntegrationTestCase
 {
diff --git a/surefire-its/src/test/java/org/apache/maven/surefire/its/jiras/Surefire946KillMainProcessInReusableForkIT.java b/surefire-its/src/test/java/org/apache/maven/surefire/its/jiras/Surefire946KillMainProcessInReusableForkIT.java
index 268ffef..4be28e7 100644
--- a/surefire-its/src/test/java/org/apache/maven/surefire/its/jiras/Surefire946KillMainProcessInReusableForkIT.java
+++ b/surefire-its/src/test/java/org/apache/maven/surefire/its/jiras/Surefire946KillMainProcessInReusableForkIT.java
@@ -19,12 +19,12 @@ package org.apache.maven.surefire.its.jiras;
  * under the License.
  */
 
+import com.googlecode.junittoolbox.ParallelParameterized;
 import org.apache.maven.surefire.its.fixture.SurefireJUnit4IntegrationTestCase;
 import org.junit.Before;
 import org.junit.BeforeClass;
 import org.junit.Test;
 import org.junit.runner.RunWith;
-import org.junit.runners.Parameterized;
 import org.junit.runners.Parameterized.Parameter;
 import org.junit.runners.Parameterized.Parameters;
 import org.w3c.dom.Document;
@@ -40,7 +40,7 @@ import static org.fest.assertions.Assertions.assertThat;
 /**
  *
  */
-@RunWith( Parameterized.class )
+@RunWith( ParallelParameterized.class )
 @SuppressWarnings( "checkstyle:magicnumber" )
 public class Surefire946KillMainProcessInReusableForkIT
     extends SurefireJUnit4IntegrationTestCase


[maven-surefire] 03/07: fixed expected value in assertions

Posted by ti...@apache.org.
This is an automated email from the ASF dual-hosted git repository.

tibordigana pushed a commit to branch master
in repository https://gitbox.apache.org/repos/asf/maven-surefire.git

commit 2ea3af0efcb2ac6bf8cf9780f0905960fb73726a
Author: tibordigana <ti...@apache.org>
AuthorDate: Sun Jun 21 13:03:08 2020 +0200

    fixed expected value in assertions
---
 .../Surefire1146RerunFailedAndParameterizedIT.java | 23 +++++++++++++++++-----
 1 file changed, 18 insertions(+), 5 deletions(-)

diff --git a/surefire-its/src/test/java/org/apache/maven/surefire/its/jiras/Surefire1146RerunFailedAndParameterizedIT.java b/surefire-its/src/test/java/org/apache/maven/surefire/its/jiras/Surefire1146RerunFailedAndParameterizedIT.java
index 4840762..a1c5666 100644
--- a/surefire-its/src/test/java/org/apache/maven/surefire/its/jiras/Surefire1146RerunFailedAndParameterizedIT.java
+++ b/surefire-its/src/test/java/org/apache/maven/surefire/its/jiras/Surefire1146RerunFailedAndParameterizedIT.java
@@ -41,28 +41,41 @@ public class Surefire1146RerunFailedAndParameterizedIT
     private void verify( OutputValidator outputValidator, int run, int failures, int errors, int skipped, int flakes )
     {
         outputValidator.verifyTextInLog( "Flakes:" );
-        outputValidator.verifyTextInLog( "jiras.surefire1146.CustomDescriptionParameterizedTest.flakyTest[0: (Test11); Test12; Test13;](jiras.surefire1146.CustomDescriptionParameterizedTest)" );
+        outputValidator.verifyTextInLog( "jiras.surefire1146.CustomDescriptionParameterizedTest.flakyTest[0: (Test11); Test12; Test13;]" );
         outputValidator.verifyTextInLog( "Run 1: CustomDescriptionParameterizedTest.flakyTest:" );
         outputValidator.verifyTextInLog( "Run 2: CustomDescriptionParameterizedTest.flakyTest:" );
         outputValidator.verifyTextInLog( "Run 3: PASS" );
 
-        outputValidator.verifyTextInLog( "jiras.surefire1146.CustomDescriptionWithCommaParameterizedTest.flakyTest[0: (Test11), Test12, Test13;](jiras.surefire1146.CustomDescriptionWithCommaParameterizedTest)" );
+        outputValidator.getSurefireReportsXmlFile( "TEST-jiras.surefire1146.CustomDescriptionParameterizedTest.xml" )
+            .assertContainsText( "<testcase name=\"flakyTest[0: (Test11); Test12; Test13;]\" classname=\"jiras.surefire1146.CustomDescriptionParameterizedTest\"" )
+            .assertContainsText( "<testcase name=\"flakyTest[1: (Test21); Test22; Test23;]\" classname=\"jiras.surefire1146.CustomDescriptionParameterizedTest\"" );
+
+        outputValidator.verifyTextInLog( "jiras.surefire1146.CustomDescriptionWithCommaParameterizedTest.flakyTest[0: (Test11), Test12, Test13;]" );
         outputValidator.verifyTextInLog( "Run 1: CustomDescriptionWithCommaParameterizedTest.flakyTest:" );
         outputValidator.verifyTextInLog( "Run 2: CustomDescriptionWithCommaParameterizedTest.flakyTest:" );
         outputValidator.verifyTextInLog( "Run 3: PASS" );
+
+        outputValidator.getSurefireReportsXmlFile( "TEST-jiras.surefire1146.CustomDescriptionWithCommaParameterizedTest.xml" )
+            .assertContainsText( "<testcase name=\"flakyTest[0: (Test11), Test12, Test13;]\" classname=\"jiras.surefire1146.CustomDescriptionWithCommaParameterizedTest\"" )
+            .assertContainsText( "<testcase name=\"flakyTest[1: (Test21), Test22, Test23;]\" classname=\"jiras.surefire1146.CustomDescriptionWithCommaParameterizedTest\"" )
+            .assertContainsText( "<testcase name=\"flakyTest[2: (Test31), Test32, Test33;]\" classname=\"jiras.surefire1146.CustomDescriptionWithCommaParameterizedTest\"" );
         
-        outputValidator.verifyTextInLog( "jiras.surefire1146.CustomDescriptionWithCommaParameterizedTest.flakyTest[2: (Test31), Test32, Test33;](jiras.surefire1146.CustomDescriptionWithCommaParameterizedTest)" );
+        outputValidator.verifyTextInLog( "jiras.surefire1146.CustomDescriptionWithCommaParameterizedTest.flakyTest[2: (Test31), Test32, Test33;]" );
         outputValidator.verifyTextInLog( "Run 1: CustomDescriptionWithCommaParameterizedTest.flakyTest:" );
         outputValidator.verifyTextInLog( "Run 2: PASS" );
         
-        outputValidator.verifyTextInLog( "jiras.surefire1146.SimpleParameterizedTest.flakyTest[0](jiras.surefire1146.SimpleParameterizedTest)" );
+        outputValidator.verifyTextInLog( "jiras.surefire1146.SimpleParameterizedTest.flakyTest[0]" );
         outputValidator.verifyTextInLog( "Run 1: SimpleParameterizedTest.flakyTest:" );
         outputValidator.verifyTextInLog( "Run 2: SimpleParameterizedTest.flakyTest:" );
         outputValidator.verifyTextInLog( "Run 3: PASS" );
+        outputValidator.getSurefireReportsXmlFile( "TEST-jiras.surefire1146.SimpleParameterizedTest.xml" )
+            .assertContainsText( "<testcase name=\"flakyTest[0]\" classname=\"jiras.surefire1146.SimpleParameterizedTest\"" );
         
-        outputValidator.verifyTextInLog( "jiras.surefire1146.StandardTest.flakyTest(jiras.surefire1146.StandardTest)" );
+        outputValidator.verifyTextInLog( "jiras.surefire1146.StandardTest.flakyTest" );
         outputValidator.verifyTextInLog( "Run 1: StandardTest.flakyTest:" );
         outputValidator.verifyTextInLog( "Run 2: PASS" );
+        outputValidator.getSurefireReportsXmlFile( "TEST-jiras.surefire1146.StandardTest.xml" )
+            .assertContainsText( "<testcase name=\"flakyTest\" classname=\"jiras.surefire1146.StandardTest\"" );
 
         verifyStatistics( outputValidator, run, failures, errors, skipped, flakes );
     }


[maven-surefire] 05/07: removed unnecessary junit5 versions 5.3.0, 5.4.0, 5.5.0 in the ITs

Posted by ti...@apache.org.
This is an automated email from the ASF dual-hosted git repository.

tibordigana pushed a commit to branch master
in repository https://gitbox.apache.org/repos/asf/maven-surefire.git

commit b925ea589931649de26b8055530395cb6c454d74
Author: tibordigana <ti...@apache.org>
AuthorDate: Tue Jun 23 00:30:50 2020 +0200

    removed unnecessary junit5 versions 5.3.0, 5.4.0, 5.5.0 in the ITs
---
 surefire-its/pom.xml                               | 24 ----------------------
 .../apache/maven/surefire/its/JUnitPlatformIT.java |  5 +----
 .../its/JUnitPlatformRerunFailingTestsIT.java      |  2 +-
 3 files changed, 2 insertions(+), 29 deletions(-)

diff --git a/surefire-its/pom.xml b/surefire-its/pom.xml
index cd5cd5c..930bbd1 100644
--- a/surefire-its/pom.xml
+++ b/surefire-its/pom.xml
@@ -627,12 +627,6 @@
                                 <configuration><artifact>org.junit.vintage:junit-vintage-engine:5.2.0</artifact></configuration>
                             </execution>
                             <execution>
-                                <id>vintage-5.3</id>
-                                <phase>pre-integration-test</phase>
-                                <goals><goal>get</goal></goals>
-                                <configuration><artifact>org.junit.vintage:junit-vintage-engine:5.3.0</artifact></configuration>
-                            </execution>
-                            <execution>
                                 <id>vintage-5.3.2</id>
                                 <phase>pre-integration-test</phase>
                                 <goals><goal>get</goal></goals>
@@ -651,12 +645,6 @@
                                 <configuration><artifact>org.junit.vintage:junit-vintage-engine:5.4.2</artifact></configuration>
                             </execution>
                             <execution>
-                                <id>vintage-5.5</id>
-                                <phase>pre-integration-test</phase>
-                                <goals><goal>get</goal></goals>
-                                <configuration><artifact>org.junit.vintage:junit-vintage-engine:5.5.0</artifact></configuration>
-                            </execution>
-                            <execution>
                                 <id>vintage-5.5.2</id>
                                 <phase>pre-integration-test</phase>
                                 <goals><goal>get</goal></goals>
@@ -687,12 +675,6 @@
                                 <configuration><artifact>org.junit.jupiter:junit-jupiter-engine:5.2.0</artifact></configuration>
                             </execution>
                             <execution>
-                                <id>jupiter-5.3</id>
-                                <phase>pre-integration-test</phase>
-                                <goals><goal>get</goal></goals>
-                                <configuration><artifact>org.junit.jupiter:junit-jupiter-engine:5.3.0</artifact></configuration>
-                            </execution>
-                            <execution>
                                 <id>jupiter-5.3.2</id>
                                 <phase>pre-integration-test</phase>
                                 <goals><goal>get</goal></goals>
@@ -711,12 +693,6 @@
                                 <configuration><artifact>org.junit.jupiter:junit-jupiter-engine:5.4.2</artifact></configuration>
                             </execution>
                             <execution>
-                                <id>jupiter-5.5</id>
-                                <phase>pre-integration-test</phase>
-                                <goals><goal>get</goal></goals>
-                                <configuration><artifact>org.junit.jupiter:junit-jupiter-engine:5.5.0</artifact></configuration>
-                            </execution>
-                            <execution>
                                 <id>jupiter-5.5.2</id>
                                 <phase>pre-integration-test</phase>
                                 <goals><goal>get</goal></goals>
diff --git a/surefire-its/src/test/java/org/apache/maven/surefire/its/JUnitPlatformIT.java b/surefire-its/src/test/java/org/apache/maven/surefire/its/JUnitPlatformIT.java
index 073cbf9..b229ab7 100644
--- a/surefire-its/src/test/java/org/apache/maven/surefire/its/JUnitPlatformIT.java
+++ b/surefire-its/src/test/java/org/apache/maven/surefire/its/JUnitPlatformIT.java
@@ -54,12 +54,9 @@ public class JUnitPlatformIT
     {
         ArrayList<Object[]> args = new ArrayList<>();
         args.add( new Object[] { "5.2.0", "0.8.0" } );
-        args.add( new Object[] { "5.3.0", "0.8.15" } );
         args.add( new Object[] { "5.3.2", "0.9.0" } );
-        args.add( new Object[] { "5.4.0", "0.9.3" } );
         args.add( new Object[] { "5.4.2", "1.0.0" } );
-        args.add( new Object[] { "5.5.0", "1.1.0" } );
-        args.add( new Object[] { "5.5.2", "1.1.0" } );
+        args.add( new Object[] { "5.5.2", "0.8.15" } );
         args.add( new Object[] { "5.6.2", "1.2.7" } );
         //args.add( new Object[] { "5.7.0-SNAPSHOT", "1.2.7" } );
         return args;
diff --git a/surefire-its/src/test/java/org/apache/maven/surefire/its/JUnitPlatformRerunFailingTestsIT.java b/surefire-its/src/test/java/org/apache/maven/surefire/its/JUnitPlatformRerunFailingTestsIT.java
index 1ae105f..2b2b3b4 100644
--- a/surefire-its/src/test/java/org/apache/maven/surefire/its/JUnitPlatformRerunFailingTestsIT.java
+++ b/surefire-its/src/test/java/org/apache/maven/surefire/its/JUnitPlatformRerunFailingTestsIT.java
@@ -36,7 +36,7 @@ import static org.apache.maven.surefire.its.fixture.HelperAssertions.assumeJavaV
 @SuppressWarnings( "checkstyle:magicnumber" )
 public class JUnitPlatformRerunFailingTestsIT extends SurefireJUnit4IntegrationTestCase
 {
-    private static final String VERSION = "5.5.1";
+    private static final String VERSION = "5.5.2";
 
     private SurefireLauncher unpack()
     {