Convert test suites to JUnit 4 style.

Change-Id: I10cc6714b28beb9f483d0fe92913b82cc7b65146
Signed-off-by: Alexander Kurtakov <akurtako@redhat.com>
diff --git a/bundles/org.eclipse.equinox.p2.tests/src/org/eclipse/equinox/p2/tests/ManualTests.java b/bundles/org.eclipse.equinox.p2.tests/src/org/eclipse/equinox/p2/tests/ManualTests.java
index 61e021d..2993367 100644
--- a/bundles/org.eclipse.equinox.p2.tests/src/org/eclipse/equinox/p2/tests/ManualTests.java
+++ b/bundles/org.eclipse.equinox.p2.tests/src/org/eclipse/equinox/p2/tests/ManualTests.java
@@ -7,22 +7,21 @@
  * https://www.eclipse.org/legal/epl-2.0/
  *
  * SPDX-License-Identifier: EPL-2.0
- * 
+ *
  * Contributors:
  *     IBM Corporation - initial API and implementation
  *******************************************************************************/
 package org.eclipse.equinox.p2.tests;
 
-import junit.framework.*;
+import org.junit.runner.RunWith;
+import org.junit.runners.Suite;
 
 /**
  * This is the master test suite for all automated provisioning tests that require some
  * manual set. These tests can't be run automatically as part of a build.
  */
-public class ManualTests extends TestCase {
-	public static Test suite() {
-		TestSuite suite = new TestSuite(AutomatedTests.class.getName());
-		suite.addTestSuite(org.eclipse.equinox.p2.tests.full.DirectorTest.class);
-		return suite;
-	}
+@RunWith(Suite.class)
+@Suite.SuiteClasses({ org.eclipse.equinox.p2.tests.full.DirectorTest.class })
+public class ManualTests {
+//test suite
 }
diff --git a/bundles/org.eclipse.equinox.p2.tests/src/org/eclipse/equinox/p2/tests/ant/AllTests.java b/bundles/org.eclipse.equinox.p2.tests/src/org/eclipse/equinox/p2/tests/ant/AllTests.java
index 92b5d79..b03c2ae 100644
--- a/bundles/org.eclipse.equinox.p2.tests/src/org/eclipse/equinox/p2/tests/ant/AllTests.java
+++ b/bundles/org.eclipse.equinox.p2.tests/src/org/eclipse/equinox/p2/tests/ant/AllTests.java
@@ -7,25 +7,20 @@
  *  https://www.eclipse.org/legal/epl-2.0/
  *
  *  SPDX-License-Identifier: EPL-2.0
- * 
+ *
  *  Contributors:
  *     IBM Corporation - initial API and implementation
  *******************************************************************************/
 package org.eclipse.equinox.p2.tests.ant;
 
-import junit.framework.*;
+import org.junit.runner.RunWith;
+import org.junit.runners.Suite;
 
 /**
  * Performs all automated artifact repository tests.
  */
-public class AllTests extends TestCase {
-
-	public static Test suite() {
-		TestSuite suite = new TestSuite(AllTests.class.getName());
-		suite.addTestSuite(CompositeRepositoryTaskTest.class);
-		suite.addTestSuite(MirrorTaskTest.class);
-		suite.addTestSuite(Repo2RunnableTaskTests.class);
-		return suite;
-	}
-
+@RunWith(Suite.class)
+@Suite.SuiteClasses({ CompositeRepositoryTaskTest.class, MirrorTaskTest.class, Repo2RunnableTaskTests.class })
+public class AllTests {
+// test suite
 }
\ No newline at end of file
diff --git a/bundles/org.eclipse.equinox.p2.tests/src/org/eclipse/equinox/p2/tests/artifact/processors/AllTests.java b/bundles/org.eclipse.equinox.p2.tests/src/org/eclipse/equinox/p2/tests/artifact/processors/AllTests.java
index d862e6c..d797c01 100644
--- a/bundles/org.eclipse.equinox.p2.tests/src/org/eclipse/equinox/p2/tests/artifact/processors/AllTests.java
+++ b/bundles/org.eclipse.equinox.p2.tests/src/org/eclipse/equinox/p2/tests/artifact/processors/AllTests.java
@@ -13,20 +13,15 @@
  *******************************************************************************/
 package org.eclipse.equinox.p2.tests.artifact.processors;
 
-import junit.framework.*;
+import org.junit.runner.RunWith;
+import org.junit.runners.Suite;
 
 /**
  * Performs all automated director tests.
  */
-public class AllTests extends TestCase {
-
-	public static Test suite() {
-		TestSuite suite = new TestSuite(AllTests.class.getName());
-		suite.addTestSuite(Pack200ProcessorTest.class);
-		suite.addTestSuite(ZipVerifierProcessorTest.class);
-		suite.addTest(new JUnit4TestAdapter(ChecksumVerifierTest.class));
-		suite.addTest(new JUnit4TestAdapter(ChecksumUtilitiesTest.class));
-		return suite;
-	}
-
+@RunWith(Suite.class)
+@Suite.SuiteClasses({ Pack200ProcessorTest.class, ZipVerifierProcessorTest.class, ChecksumVerifierTest.class,
+		ChecksumUtilitiesTest.class })
+public class AllTests {
+// test suite
 }
diff --git a/bundles/org.eclipse.equinox.p2.tests/src/org/eclipse/equinox/p2/tests/artifact/repository/AllTests.java b/bundles/org.eclipse.equinox.p2.tests/src/org/eclipse/equinox/p2/tests/artifact/repository/AllTests.java
index 08d7097..fac04a2 100644
--- a/bundles/org.eclipse.equinox.p2.tests/src/org/eclipse/equinox/p2/tests/artifact/repository/AllTests.java
+++ b/bundles/org.eclipse.equinox.p2.tests/src/org/eclipse/equinox/p2/tests/artifact/repository/AllTests.java
@@ -7,41 +7,27 @@
  *  https://www.eclipse.org/legal/epl-2.0/
  *
  *  SPDX-License-Identifier: EPL-2.0
- * 
+ *
  *  Contributors:
  *     IBM Corporation - initial API and implementation
  *******************************************************************************/
 package org.eclipse.equinox.p2.tests.artifact.repository;
 
-import junit.framework.*;
+import org.junit.runner.RunWith;
+import org.junit.runners.Suite;
 
 /**
  * Performs all automated artifact repository tests.
  */
-public class AllTests extends TestCase {
-
-	public static Test suite() {
-		TestSuite suite = new TestSuite(AllTests.class.getName());
-		suite.addTestSuite(ArtifactLockingTest.class);
-		suite.addTestSuite(ArtifactOutputStreamTest.class);
-		suite.addTestSuite(ArtifactRepositoryManagerTest.class);
-		suite.addTestSuite(ArtifactRepositoryMissingSizeData.class);
-		suite.addTestSuite(ArtifactRepositoryWithReferenceDescriptors.class);
-		suite.addTestSuite(BatchExecuteArtifactRepositoryTest.class);
-		suite.addTestSuite(Bug252308.class);
-		suite.addTestSuite(Bug265577.class);
-		suite.addTestSuite(Bug351944.class);
-		suite.addTestSuite(CompositeArtifactRepositoryTest.class);
-		suite.addTestSuite(CorruptedJar.class);
-		suite.addTestSuite(FoldersRepositoryTest.class);
-		suite.addTestSuite(JarURLArtifactRepositoryTest.class);
-		suite.addTestSuite(LocationTest.class);
-		suite.addTestSuite(MD5Tests.class);
-		suite.addTestSuite(MirrorSelectorTest.class);
-		suite.addTestSuite(MirrorRequestTest.class);
-		suite.addTestSuite(SimpleArtifactRepositoryTest.class);
-		suite.addTestSuite(TransferTest.class);
-		return suite;
-	}
-
+@RunWith(Suite.class)
+@Suite.SuiteClasses({
+		ArtifactLockingTest.class, ArtifactOutputStreamTest.class, ArtifactRepositoryManagerTest.class,
+		ArtifactRepositoryMissingSizeData.class, ArtifactRepositoryWithReferenceDescriptors.class,
+		BatchExecuteArtifactRepositoryTest.class, Bug252308.class, Bug265577.class, Bug351944.class,
+		CompositeArtifactRepositoryTest.class, CorruptedJar.class, FoldersRepositoryTest.class,
+		JarURLArtifactRepositoryTest.class, LocationTest.class, MD5Tests.class, MirrorSelectorTest.class,
+		MirrorRequestTest.class, SimpleArtifactRepositoryTest.class, TransferTest.class
+})
+public class AllTests {
+// test suite
 }
\ No newline at end of file
diff --git a/bundles/org.eclipse.equinox.p2.tests/src/org/eclipse/equinox/p2/tests/artifact/repository/processing/AllTests.java b/bundles/org.eclipse.equinox.p2.tests/src/org/eclipse/equinox/p2/tests/artifact/repository/processing/AllTests.java
index d624d6d..d21e7a1 100644
--- a/bundles/org.eclipse.equinox.p2.tests/src/org/eclipse/equinox/p2/tests/artifact/repository/processing/AllTests.java
+++ b/bundles/org.eclipse.equinox.p2.tests/src/org/eclipse/equinox/p2/tests/artifact/repository/processing/AllTests.java
@@ -7,24 +7,20 @@
  *  https://www.eclipse.org/legal/epl-2.0/
  *
  *  SPDX-License-Identifier: EPL-2.0
- * 
+ *
  *  Contributors:
  *     IBM Corporation - initial API and implementation
  *******************************************************************************/
 package org.eclipse.equinox.p2.tests.artifact.repository.processing;
 
-import junit.framework.*;
+import org.junit.runner.RunWith;
+import org.junit.runners.Suite;
 
 /**
  * Performs all automated director tests.
  */
-public class AllTests extends TestCase {
-
-	public static Test suite() {
-		TestSuite suite = new TestSuite(AllTests.class.getName());
-		suite.addTestSuite(ProcessingStepHandlerTest.class);
-		suite.addTestSuite(ProcessingStepTest.class);
-		return suite;
-	}
-
+@RunWith(Suite.class)
+@Suite.SuiteClasses({ ProcessingStepHandlerTest.class, ProcessingStepTest.class })
+public class AllTests {
+// test suite
 }
diff --git a/bundles/org.eclipse.equinox.p2.tests/src/org/eclipse/equinox/p2/tests/core/AllTests.java b/bundles/org.eclipse.equinox.p2.tests/src/org/eclipse/equinox/p2/tests/core/AllTests.java
index f3364e7..127a490 100644
--- a/bundles/org.eclipse.equinox.p2.tests/src/org/eclipse/equinox/p2/tests/core/AllTests.java
+++ b/bundles/org.eclipse.equinox.p2.tests/src/org/eclipse/equinox/p2/tests/core/AllTests.java
@@ -7,31 +7,23 @@
  *  https://www.eclipse.org/legal/epl-2.0/
  *
  *  SPDX-License-Identifier: EPL-2.0
- * 
+ *
  *  Contributors:
  *     IBM Corporation - initial API and implementation
  *******************************************************************************/
 package org.eclipse.equinox.p2.tests.core;
 
-import junit.framework.*;
+import org.junit.runner.RunWith;
+import org.junit.runners.Suite;
 
 /**
  * Performs all automated core tests.
  */
-public class AllTests extends TestCase {
-
-	public static Test suite() {
-		TestSuite suite = new TestSuite(AllTests.class.getName());
-		suite.addTestSuite(AggregateQueryTest.class);
-		suite.addTestSuite(BackupTest.class);
-		suite.addTestSuite(CollectorTest.class);
-		suite.addTestSuite(CompoundQueryableTest.class);
-		suite.addTestSuite(FileUtilsTest.class);
-		suite.addTestSuite(OrderedPropertiesTest.class);
-		suite.addTestSuite(ProvisioningAgentTest.class);
-		suite.addTestSuite(QueryTest.class);
-		suite.addTestSuite(URLUtilTest.class);
-		return suite;
-	}
-
+@RunWith(Suite.class)
+@Suite.SuiteClasses({ AggregateQueryTest.class, BackupTest.class, CollectorTest.class,
+		CompoundQueryableTest.class,
+		FileUtilsTest.class, OrderedPropertiesTest.class, ProvisioningAgentTest.class, QueryTest.class,
+		URLUtilTest.class })
+public class AllTests {
+// test suite
 }
diff --git a/bundles/org.eclipse.equinox.p2.tests/src/org/eclipse/equinox/p2/tests/director/AllTests.java b/bundles/org.eclipse.equinox.p2.tests/src/org/eclipse/equinox/p2/tests/director/AllTests.java
index 6a7a084..c4b2e08 100644
--- a/bundles/org.eclipse.equinox.p2.tests/src/org/eclipse/equinox/p2/tests/director/AllTests.java
+++ b/bundles/org.eclipse.equinox.p2.tests/src/org/eclipse/equinox/p2/tests/director/AllTests.java
@@ -7,34 +7,23 @@
  *  https://www.eclipse.org/legal/epl-2.0/
  *
  *  SPDX-License-Identifier: EPL-2.0
- * 
+ *
  *  Contributors:
  *     IBM Corporation - initial API and implementation
  *******************************************************************************/
 package org.eclipse.equinox.p2.tests.director;
 
-import junit.framework.*;
+import org.junit.runner.RunWith;
+import org.junit.runners.Suite;
 
 /**
  * Performs all automated director tests.
  */
-public class AllTests extends TestCase {
-
-	public static Test suite() {
-		TestSuite suite = new TestSuite(AllTests.class.getName());
-		suite.addTestSuite(AutomatedDirectorTest.class);
-		suite.addTestSuite(Bug203637.class);
-		suite.addTestSuite(OperationGenerationTest.class);
-		suite.addTestSuite(OracleTest.class);
-		suite.addTestSuite(OracleTest2.class);
-		suite.addTestSuite(ReplacePlanTest.class);
-		suite.addTestSuite(RollbackTest.class);
-		suite.addTestSuite(SingletonTest.class);
-		suite.addTestSuite(UninstallTest.class);
-		suite.addTestSuite(UpdateTest.class);
-		suite.addTestSuite(IUListFormatterTest.class);
-		suite.addTestSuite(DirectorApplicationTest.class);
-		return suite;
-	}
-
+@RunWith(Suite.class)
+@Suite.SuiteClasses({ AutomatedDirectorTest.class, Bug203637.class, OperationGenerationTest.class,
+		OracleTest.class,
+		OracleTest2.class, ReplacePlanTest.class, RollbackTest.class, SingletonTest.class, UninstallTest.class,
+		UpdateTest.class, IUListFormatterTest.class, DirectorApplicationTest.class })
+public class AllTests {
+// test suite
 }
diff --git a/bundles/org.eclipse.equinox.p2.tests/src/org/eclipse/equinox/p2/tests/directorywatcher/AllTests.java b/bundles/org.eclipse.equinox.p2.tests/src/org/eclipse/equinox/p2/tests/directorywatcher/AllTests.java
index 72bdab6..44621a3 100644
--- a/bundles/org.eclipse.equinox.p2.tests/src/org/eclipse/equinox/p2/tests/directorywatcher/AllTests.java
+++ b/bundles/org.eclipse.equinox.p2.tests/src/org/eclipse/equinox/p2/tests/directorywatcher/AllTests.java
@@ -13,19 +13,14 @@
  *******************************************************************************/
 package org.eclipse.equinox.p2.tests.directorywatcher;
 
-import junit.framework.*;
+import org.junit.runner.RunWith;
+import org.junit.runners.Suite;
 
 /**
  * Performs all automated director tests.
  */
-public class AllTests extends TestCase {
-
-	public static Test suite() {
-		TestSuite suite = new TestSuite(AllTests.class.getName());
-		suite.addTestSuite(DirectoryWatcherTest.class);
-		suite.addTestSuite(RepositoryListenerTest.class);
-		suite.addTestSuite(ProfileSynchronizerTest.class);
-		return suite;
-	}
-
+@RunWith(Suite.class)
+@Suite.SuiteClasses({ DirectoryWatcherTest.class, RepositoryListenerTest.class, ProfileSynchronizerTest.class })
+public class AllTests {
+// test suite
 }
\ No newline at end of file
diff --git a/bundles/org.eclipse.equinox.p2.tests/src/org/eclipse/equinox/p2/tests/engine/AllTests.java b/bundles/org.eclipse.equinox.p2.tests/src/org/eclipse/equinox/p2/tests/engine/AllTests.java
index 0d0f9c1..0db6275 100644
--- a/bundles/org.eclipse.equinox.p2.tests/src/org/eclipse/equinox/p2/tests/engine/AllTests.java
+++ b/bundles/org.eclipse.equinox.p2.tests/src/org/eclipse/equinox/p2/tests/engine/AllTests.java
@@ -7,44 +7,27 @@
  *  https://www.eclipse.org/legal/epl-2.0/
  *
  *  SPDX-License-Identifier: EPL-2.0
- * 
+ *
  *  Contributors:
  *     IBM Corporation - initial API and implementation
  *******************************************************************************/
 package org.eclipse.equinox.p2.tests.engine;
 
-import junit.framework.*;
+import org.junit.runner.RunWith;
+import org.junit.runners.Suite;
 
 /**
  * Performs all engine tests.
  */
-public class AllTests extends TestCase {
-
-	public static Test suite() {
-		TestSuite suite = new TestSuite(AllTests.class.getName());
-		suite.addTestSuite(CertificateCheckerTest.class);
-		suite.addTestSuite(DownloadManagerTest.class);
-		suite.addTestSuite(InstructionParserTest.class);
-		suite.addTestSuite(EngineTest.class);
-		suite.addTestSuite(PhaseApplicabilityTest.class);
-		suite.addTestSuite(PhaseSetTest.class);
-		suite.addTestSuite(PhaseTest.class);
-		suite.addTestSuite(ParameterizedProvisioningActionTest.class);
-		suite.addTestSuite(ProfileMetadataRepositoryTest.class);
-		suite.addTestSuite(ProfileTest.class);
-		suite.addTestSuite(ProfilePreferencesTest.class);
-		suite.addTestSuite(ProfileRegistryTest.class);
-		suite.addTestSuite(ProvisioningContextTest.class);
-		suite.addTestSuite(SurrogateProfileHandlerTest.class);
-		suite.addTestSuite(ActionManagerTest.class);
-		suite.addTestSuite(TouchpointManagerTest.class);
-		suite.addTestSuite(TouchpointTest.class);
-		suite.addTestSuite(ProvisioningEventTest.class);
-		suite.addTestSuite(VariableTest.class);
-		suite.addTestSuite(VariableTest2.class);
-		suite.addTestSuite(VariableTest3.class);
-		suite.addTestSuite(DebugHelperTest.class);
-		return suite;
-	}
-
+@RunWith(Suite.class)
+@Suite.SuiteClasses({
+		CertificateCheckerTest.class, DownloadManagerTest.class, InstructionParserTest.class, EngineTest.class,
+		PhaseApplicabilityTest.class, PhaseSetTest.class, PhaseTest.class, ParameterizedProvisioningActionTest.class,
+		ProfileMetadataRepositoryTest.class, ProfileTest.class, ProfilePreferencesTest.class, ProfileRegistryTest.class,
+		ProvisioningContextTest.class, SurrogateProfileHandlerTest.class, ActionManagerTest.class,
+		TouchpointManagerTest.class, TouchpointTest.class, ProvisioningEventTest.class, VariableTest.class,
+		VariableTest2.class, VariableTest3.class, DebugHelperTest.class
+})
+public class AllTests {
+// test suite
 }
diff --git a/bundles/org.eclipse.equinox.p2.tests/src/org/eclipse/equinox/p2/tests/extensionlocation/AllTests.java b/bundles/org.eclipse.equinox.p2.tests/src/org/eclipse/equinox/p2/tests/extensionlocation/AllTests.java
index 53be7f9..ced669e 100644
--- a/bundles/org.eclipse.equinox.p2.tests/src/org/eclipse/equinox/p2/tests/extensionlocation/AllTests.java
+++ b/bundles/org.eclipse.equinox.p2.tests/src/org/eclipse/equinox/p2/tests/extensionlocation/AllTests.java
@@ -13,18 +13,15 @@
  *******************************************************************************/
 package org.eclipse.equinox.p2.tests.extensionlocation;
 
-import junit.framework.*;
+import org.junit.runner.RunWith;
+import org.junit.runners.Suite;
 
 /**
  * Performs all automated director tests.
  */
-public class AllTests extends TestCase {
-
-	public static Test suite() {
-		TestSuite suite = new TestSuite(AllTests.class.getName());
-		suite.addTestSuite(ExtensionLocationArtifactRepositoryFactoryTest.class);
-		suite.addTestSuite(ExtensionLocationMetadataRepositoryFactoryTest.class);
-		return suite;
-	}
-
+@RunWith(Suite.class)
+@Suite.SuiteClasses({ ExtensionLocationArtifactRepositoryFactoryTest.class,
+		ExtensionLocationMetadataRepositoryFactoryTest.class })
+public class AllTests {
+// test suite
 }
diff --git a/bundles/org.eclipse.equinox.p2.tests/src/org/eclipse/equinox/p2/tests/gc/AllTests.java b/bundles/org.eclipse.equinox.p2.tests/src/org/eclipse/equinox/p2/tests/gc/AllTests.java
index fe6526f..45d8a4d 100644
--- a/bundles/org.eclipse.equinox.p2.tests/src/org/eclipse/equinox/p2/tests/gc/AllTests.java
+++ b/bundles/org.eclipse.equinox.p2.tests/src/org/eclipse/equinox/p2/tests/gc/AllTests.java
@@ -7,23 +7,20 @@
  *  https://www.eclipse.org/legal/epl-2.0/
  *
  *  SPDX-License-Identifier: EPL-2.0
- * 
+ *
  *  Contributors:
  *     IBM Corporation - initial API and implementation
  *******************************************************************************/
 package org.eclipse.equinox.p2.tests.gc;
 
-import junit.framework.*;
+import org.junit.runner.RunWith;
+import org.junit.runners.Suite;
 
 /**
  * Performs all automated gc tests.
  */
-public class AllTests extends TestCase {
-
-	public static Test suite() {
-		TestSuite suite = new TestSuite(AllTests.class.getName());
-		suite.addTestSuite(GCCleanTest.class);
-		return suite;
-	}
-
+@RunWith(Suite.class)
+@Suite.SuiteClasses({ GCCleanTest.class })
+public class AllTests {
+// test suite
 }
diff --git a/bundles/org.eclipse.equinox.p2.tests/src/org/eclipse/equinox/p2/tests/generator/AllTests.java b/bundles/org.eclipse.equinox.p2.tests/src/org/eclipse/equinox/p2/tests/generator/AllTests.java
index d716c38..cc8aac7 100644
--- a/bundles/org.eclipse.equinox.p2.tests/src/org/eclipse/equinox/p2/tests/generator/AllTests.java
+++ b/bundles/org.eclipse.equinox.p2.tests/src/org/eclipse/equinox/p2/tests/generator/AllTests.java
@@ -7,23 +7,20 @@
  *  https://www.eclipse.org/legal/epl-2.0/
  *
  *  SPDX-License-Identifier: EPL-2.0
- * 
+ *
  *  Contributors:
  *     IBM Corporation - initial API and implementation
  *******************************************************************************/
 package org.eclipse.equinox.p2.tests.generator;
 
-import junit.framework.*;
+import org.junit.runner.RunWith;
+import org.junit.runners.Suite;
 
 /**
  * Performs all engine tests.
  */
-public class AllTests extends TestCase {
-
-	public static Test suite() {
-		TestSuite suite = new TestSuite(AllTests.class.getName());
-		suite.addTestSuite(GeneratorTests.class);
-		return suite;
-	}
-
+@RunWith(Suite.class)
+@Suite.SuiteClasses({ GeneratorTests.class })
+public class AllTests {
+// test suite
 }
diff --git a/bundles/org.eclipse.equinox.p2.tests/src/org/eclipse/equinox/p2/tests/jarprocessor/AllTests.java b/bundles/org.eclipse.equinox.p2.tests/src/org/eclipse/equinox/p2/tests/jarprocessor/AllTests.java
index efe5210..e768fff 100644
--- a/bundles/org.eclipse.equinox.p2.tests/src/org/eclipse/equinox/p2/tests/jarprocessor/AllTests.java
+++ b/bundles/org.eclipse.equinox.p2.tests/src/org/eclipse/equinox/p2/tests/jarprocessor/AllTests.java
@@ -13,17 +13,14 @@
  *******************************************************************************/
 package org.eclipse.equinox.p2.tests.jarprocessor;
 
-import junit.framework.*;
+import org.junit.runner.RunWith;
+import org.junit.runners.Suite;
 
 /**
  * Performs all automated JarProcessor tests.
  */
-public class AllTests extends TestCase {
-
-	public static Test suite() {
-		TestSuite suite = new TestSuite(AllTests.class.getName());
-		suite.addTestSuite(JarProcessorTests.class);
-		return suite;
-	}
-
+@RunWith(Suite.class)
+@Suite.SuiteClasses({ JarProcessorTests.class })
+public class AllTests {
+// test suite
 }
\ No newline at end of file
diff --git a/bundles/org.eclipse.equinox.p2.tests/src/org/eclipse/equinox/p2/tests/metadata/AllTests.java b/bundles/org.eclipse.equinox.p2.tests/src/org/eclipse/equinox/p2/tests/metadata/AllTests.java
index 5072606..2c3d193 100644
--- a/bundles/org.eclipse.equinox.p2.tests/src/org/eclipse/equinox/p2/tests/metadata/AllTests.java
+++ b/bundles/org.eclipse.equinox.p2.tests/src/org/eclipse/equinox/p2/tests/metadata/AllTests.java
@@ -14,33 +14,18 @@
  *******************************************************************************/
 package org.eclipse.equinox.p2.tests.metadata;
 
-import junit.framework.JUnit4TestAdapter;
-import junit.framework.Test;
 import junit.framework.TestCase;
-import junit.framework.TestSuite;
+import org.junit.runner.RunWith;
+import org.junit.runners.Suite;
 
 /**
  * Performs all metadata tests.
  */
+@RunWith(Suite.class)
+@Suite.SuiteClasses({ ArtifactKeyParsingTest.class, FragmentMethodTest.class, FragmentTest.class,
+		InstallableUnitTest.class, InstallableUnitPatchTest.class, IUPersistenceTest.class, LatestIUTest.class,
+		LicenseTest.class, MultipleIUAndFragmentTest.class, PersistNegation.class, PersistFragment.class,
+		ProvidedCapabilityTest.class, RequirementToString.class, RequirementParsingTest.class })
 public class AllTests extends TestCase {
-
-	public static Test suite() {
-		TestSuite suite = new TestSuite(AllTests.class.getName());
-		suite.addTestSuite(ArtifactKeyParsingTest.class);
-		suite.addTestSuite(FragmentMethodTest.class);
-		suite.addTestSuite(FragmentTest.class);
-		suite.addTestSuite(InstallableUnitTest.class);
-		suite.addTestSuite(InstallableUnitPatchTest.class);
-		suite.addTestSuite(IUPersistenceTest.class);
-		suite.addTestSuite(LatestIUTest.class);
-		suite.addTestSuite(LicenseTest.class);
-		suite.addTestSuite(MultipleIUAndFragmentTest.class);
-		suite.addTestSuite(PersistNegation.class);
-		suite.addTestSuite(PersistFragment.class);
-		suite.addTestSuite(ProvidedCapabilityTest.class);
-		suite.addTestSuite(RequirementToString.class);
-		suite.addTest(new JUnit4TestAdapter(RequirementParsingTest.class));
-		return suite;
-	}
-
+//test suite
 }
\ No newline at end of file
diff --git a/bundles/org.eclipse.equinox.p2.tests/src/org/eclipse/equinox/p2/tests/metadata/expression/AllTests.java b/bundles/org.eclipse.equinox.p2.tests/src/org/eclipse/equinox/p2/tests/metadata/expression/AllTests.java
index 2393c6b..98a5db9 100644
--- a/bundles/org.eclipse.equinox.p2.tests/src/org/eclipse/equinox/p2/tests/metadata/expression/AllTests.java
+++ b/bundles/org.eclipse.equinox.p2.tests/src/org/eclipse/equinox/p2/tests/metadata/expression/AllTests.java
@@ -13,21 +13,14 @@
  *******************************************************************************/
 package org.eclipse.equinox.p2.tests.metadata.expression;
 
-import junit.framework.JUnit4TestAdapter;
-import junit.framework.Test;
-import junit.framework.TestCase;
-import junit.framework.TestSuite;
+import org.junit.runner.RunWith;
+import org.junit.runners.Suite;
 
 /**
  * Performs all automated director tests.
  */
-public class AllTests extends TestCase {
-
-	public static Test suite() {
-		TestSuite suite = new TestSuite(AllTests.class.getName());
-		suite.addTestSuite(ExpressionTest.class);
-		suite.addTest(new JUnit4TestAdapter(FilterTest.class));
-		return suite;
-	}
-
+@RunWith(Suite.class)
+@Suite.SuiteClasses({ ExpressionTest.class, FilterTest.class })
+public class AllTests {
+//test suite
 }
diff --git a/bundles/org.eclipse.equinox.p2.tests/src/org/eclipse/equinox/p2/tests/metadata/repository/AllTests.java b/bundles/org.eclipse.equinox.p2.tests/src/org/eclipse/equinox/p2/tests/metadata/repository/AllTests.java
index 8715447..cae5b3b 100644
--- a/bundles/org.eclipse.equinox.p2.tests/src/org/eclipse/equinox/p2/tests/metadata/repository/AllTests.java
+++ b/bundles/org.eclipse.equinox.p2.tests/src/org/eclipse/equinox/p2/tests/metadata/repository/AllTests.java
@@ -7,36 +7,29 @@
  *  https://www.eclipse.org/legal/epl-2.0/
  *
  *  SPDX-License-Identifier: EPL-2.0
- * 
+ *
  *  Contributors:
  *     IBM Corporation - initial API and implementation
  *     Rapicorp, Inc - addition implementation
  *******************************************************************************/
 package org.eclipse.equinox.p2.tests.metadata.repository;
 
-import junit.framework.*;
+import org.junit.runner.RunWith;
+import org.junit.runners.Suite;
 
 /**
  * Performs all automated metadata repository tests.
  */
-public class AllTests extends TestCase {
-
-	public static Test suite() {
-		TestSuite suite = new TestSuite(AllTests.class.getName());
-		suite.addTestSuite(BatchExecuteMetadataRepositoryTest.class);
-		suite.addTestSuite(CompositeMetadataRepositoryTest.class);
-		suite.addTestSuite(JarURLMetadataRepositoryTest.class);
-		suite.addTestSuite(LocalMetadataRepositoryTest.class);
-		suite.addTestSuite(SPIMetadataRepositoryTest.class);
-		suite.addTestSuite(StandaloneSerializationTest.class);
-		suite.addTestSuite(MetadataRepositoryManagerTest.class);
-		suite.addTestSuite(NoFailOver.class);
-		suite.addTestSuite(SiteIndexFileTest.class);
-		suite.addTestSuite(XZedRepositoryTest.class);
-		//		suite.addTestSuite(ResumeDownloadTest.class);
+@RunWith(Suite.class)
+@Suite.SuiteClasses({
+		BatchExecuteMetadataRepositoryTest.class, CompositeMetadataRepositoryTest.class,
+		JarURLMetadataRepositoryTest.class, LocalMetadataRepositoryTest.class, SPIMetadataRepositoryTest.class,
+		StandaloneSerializationTest.class, MetadataRepositoryManagerTest.class, NoFailOver.class,
+		SiteIndexFileTest.class, XZedRepositoryTest.class
+})
+public class AllTests {
+	// ResumeDownloadTest.class,
 		// DISABLING until we get a test build
-		//		AllServerTests.addToSuite(suite);
-		return suite;
-	}
+	// AllServerTests.addToSuite(suite,
 
 }
\ No newline at end of file
diff --git a/bundles/org.eclipse.equinox.p2.tests/src/org/eclipse/equinox/p2/tests/mirror/AllTests.java b/bundles/org.eclipse.equinox.p2.tests/src/org/eclipse/equinox/p2/tests/mirror/AllTests.java
index b148e7c..cf418cc 100644
--- a/bundles/org.eclipse.equinox.p2.tests/src/org/eclipse/equinox/p2/tests/mirror/AllTests.java
+++ b/bundles/org.eclipse.equinox.p2.tests/src/org/eclipse/equinox/p2/tests/mirror/AllTests.java
@@ -7,29 +7,24 @@
  *  https://www.eclipse.org/legal/epl-2.0/
  *
  *  SPDX-License-Identifier: EPL-2.0
- * 
+ *
  *  Contributors:
  *     IBM Corporation - initial API and implementation
  *******************************************************************************/
 package org.eclipse.equinox.p2.tests.mirror;
 
-import junit.framework.*;
+import org.junit.runner.RunWith;
+import org.junit.runners.Suite;
 
 /**
  * Performs all automated mirror repository tests.
  */
-public class AllTests extends TestCase {
-
-	public static Test suite() {
-		TestSuite suite = new TestSuite(AllTests.class.getName());
-		suite.addTestSuite(ArtifactMirrorApplicationTest.class);
-		suite.addTestSuite(MetadataMirrorApplicationTest.class);
-		suite.addTestSuite(ArtifactRepositoryCleanupTest.class);
-		suite.addTestSuite(MetadataRepositoryCleanupTest.class);
-		suite.addTest(new JUnit4TestAdapter(NewMirrorApplicationArtifactTest.class));
-		suite.addTestSuite(NewMirrorApplicationMetadataTest.class);
-		suite.addTest(new JUnit4TestAdapter(MirrorApplicationTest.class));
-		return suite;
-	}
-
+@RunWith(Suite.class)
+@Suite.SuiteClasses({
+		ArtifactMirrorApplicationTest.class, MetadataMirrorApplicationTest.class, ArtifactRepositoryCleanupTest.class,
+		MetadataRepositoryCleanupTest.class, NewMirrorApplicationArtifactTest.class,
+		NewMirrorApplicationMetadataTest.class, MirrorApplicationTest.class
+})
+public class AllTests {
+// test suite
 }
\ No newline at end of file
diff --git a/bundles/org.eclipse.equinox.p2.tests/src/org/eclipse/equinox/p2/tests/omniVersion/AllTests.java b/bundles/org.eclipse.equinox.p2.tests/src/org/eclipse/equinox/p2/tests/omniVersion/AllTests.java
index 246aad3..1bc2ac2 100644
--- a/bundles/org.eclipse.equinox.p2.tests/src/org/eclipse/equinox/p2/tests/omniVersion/AllTests.java
+++ b/bundles/org.eclipse.equinox.p2.tests/src/org/eclipse/equinox/p2/tests/omniVersion/AllTests.java
@@ -13,37 +13,19 @@
  *******************************************************************************/
 package org.eclipse.equinox.p2.tests.omniVersion;
 
-import junit.framework.*;
+import org.junit.runner.RunWith;
+import org.junit.runners.Suite;
 
 /**
  * Tests the OmniVersion implementation of Version and VersionRange.
- * 
+ *
  */
-public class AllTests extends TestCase {
-	public static Test suite() {
-		TestSuite suite = new TestSuite(AllTests.class.getName());
-		suite.addTestSuite(CommonPatternsTest.class);
-		suite.addTestSuite(FormatArrayTest.class);
-		suite.addTestSuite(FormatATest.class);
-		suite.addTestSuite(FormatDTest.class);
-		suite.addTestSuite(FormatNTest.class);
-		suite.addTestSuite(FormatProcessingTest.class);
-		suite.addTestSuite(FormatPTest.class);
-		suite.addTestSuite(FormatQTest.class);
-		suite.addTestSuite(FormatRTest.class);
-		suite.addTestSuite(FormatSTest.class);
-		suite.addTestSuite(FormatTest.class);
-		suite.addTestSuite(FormatRangeTest.class);
-		suite.addTestSuite(MultiplicityTest.class);
-		suite.addTestSuite(OSGiRangeTest.class);
-		suite.addTestSuite(OSGiVersionTest.class);
-		suite.addTestSuite(RawRangeTest.class);
-		suite.addTestSuite(RawRangeWithOriginalTest.class);
-		suite.addTestSuite(RawVersionTest.class);
-		suite.addTestSuite(RawWithOriginalTest.class);
-		suite.addTestSuite(IntersectionTest.class);
-
-		return suite;
-	}
-
+@RunWith(Suite.class)
+@Suite.SuiteClasses({ CommonPatternsTest.class, FormatArrayTest.class, FormatATest.class, FormatDTest.class,
+		FormatNTest.class, FormatProcessingTest.class, FormatPTest.class, FormatQTest.class, FormatRTest.class,
+		FormatSTest.class, FormatTest.class, FormatRangeTest.class, MultiplicityTest.class, OSGiRangeTest.class,
+		OSGiVersionTest.class, RawRangeTest.class, RawRangeWithOriginalTest.class, RawVersionTest.class,
+		RawWithOriginalTest.class, IntersectionTest.class })
+public class AllTests {
+// test suite
 }
diff --git a/bundles/org.eclipse.equinox.p2.tests/src/org/eclipse/equinox/p2/tests/planner/AllExplanation.java b/bundles/org.eclipse.equinox.p2.tests/src/org/eclipse/equinox/p2/tests/planner/AllExplanation.java
index 0858853..920228d 100644
--- a/bundles/org.eclipse.equinox.p2.tests/src/org/eclipse/equinox/p2/tests/planner/AllExplanation.java
+++ b/bundles/org.eclipse.equinox.p2.tests/src/org/eclipse/equinox/p2/tests/planner/AllExplanation.java
@@ -7,30 +7,22 @@
  *  https://www.eclipse.org/legal/epl-2.0/
  *
  *  SPDX-License-Identifier: EPL-2.0
- * 
+ *
  *  Contributors:
  *      IBM Corporation - initial API and implementation
  *******************************************************************************/
 package org.eclipse.equinox.p2.tests.planner;
 
-import junit.framework.*;
+import org.junit.runner.RunWith;
+import org.junit.runners.Suite;
 
-public class AllExplanation extends TestCase {
-
-	public static Test suite() {
-		TestSuite suite = new TestSuite(AllExplanation.class.getName());
-		suite.addTestSuite(ExplanationDeepConflict.class);
-		suite.addTestSuite(ExplanationForOptionalDependencies.class);
-		suite.addTestSuite(ExplanationForPartialInstallation.class);
-		suite.addTestSuite(ExplanationLargeConflict.class);
-		suite.addTestSuite(ExplanationSeveralConflictingRoots.class);
-		suite.addTestSuite(MissingDependency.class);
-		suite.addTestSuite(MissingNonGreedyRequirement.class);
-		suite.addTestSuite(MissingNonGreedyRequirement2.class);
-		suite.addTestSuite(MultipleSingleton.class);
-		suite.addTestSuite(PatchTest10.class);
-		suite.addTestSuite(PatchTest12.class);
-		return suite;
-	}
-
+@RunWith(Suite.class)
+@Suite.SuiteClasses({
+		ExplanationDeepConflict.class, ExplanationForOptionalDependencies.class,
+		ExplanationForPartialInstallation.class, ExplanationLargeConflict.class,
+		ExplanationSeveralConflictingRoots.class, MissingDependency.class, MissingNonGreedyRequirement.class,
+		MissingNonGreedyRequirement2.class, MultipleSingleton.class, PatchTest10.class, PatchTest12.class
+})
+public class AllExplanation {
+// test suite
 }
diff --git a/bundles/org.eclipse.equinox.p2.tests/src/org/eclipse/equinox/p2/tests/planner/AllMetaReqTests.java b/bundles/org.eclipse.equinox.p2.tests/src/org/eclipse/equinox/p2/tests/planner/AllMetaReqTests.java
index 73ff7da..38a1cb8 100644
--- a/bundles/org.eclipse.equinox.p2.tests/src/org/eclipse/equinox/p2/tests/planner/AllMetaReqTests.java
+++ b/bundles/org.eclipse.equinox.p2.tests/src/org/eclipse/equinox/p2/tests/planner/AllMetaReqTests.java
@@ -13,15 +13,12 @@
  *******************************************************************************/
 package org.eclipse.equinox.p2.tests.planner;
 
-import junit.framework.*;
+import org.junit.runner.RunWith;
+import org.junit.runners.Suite;
 
-public class AllMetaReqTests extends TestCase {
-	public static Test suite() {
-		TestSuite suite = new TestSuite(AllMetaReqTests.class.getName());
-		suite.addTestSuite(AgentPlanTestInExternalInstance.class);
-		suite.addTestSuite(AgentPlanTestInExternalInstanceForCohostedMode.class);
-		suite.addTestSuite(AgentPlanTestInRunningInstance.class);
-		return suite;
-	}
-
+@RunWith(Suite.class)
+@Suite.SuiteClasses({ AgentPlanTestInExternalInstance.class, AgentPlanTestInExternalInstanceForCohostedMode.class,
+		AgentPlanTestInRunningInstance.class })
+public class AllMetaReqTests {
+	// test suite
 }
diff --git a/bundles/org.eclipse.equinox.p2.tests/src/org/eclipse/equinox/p2/tests/planner/AllRequestFlexerTests.java b/bundles/org.eclipse.equinox.p2.tests/src/org/eclipse/equinox/p2/tests/planner/AllRequestFlexerTests.java
index f5bca2d..5a0f2b1 100644
--- a/bundles/org.eclipse.equinox.p2.tests/src/org/eclipse/equinox/p2/tests/planner/AllRequestFlexerTests.java
+++ b/bundles/org.eclipse.equinox.p2.tests/src/org/eclipse/equinox/p2/tests/planner/AllRequestFlexerTests.java
@@ -7,30 +7,23 @@
  * https://www.eclipse.org/legal/epl-2.0/
  *
  * SPDX-License-Identifier: EPL-2.0
- * 
+ *
  *  Contributors:
  *     Red Hat, Inc. - initial API and implementation
  *******************************************************************************/
 package org.eclipse.equinox.p2.tests.planner;
 
-import junit.framework.*;
+import org.junit.runner.RunWith;
+import org.junit.runners.Suite;
 
-public class AllRequestFlexerTests extends TestCase {
-
-	public static Test suite() {
-		TestSuite suite = new TestSuite(AllRequestFlexerTests.class.getName());
-		suite.addTestSuite(TestRequestFlexerIUProperties.class);
-		suite.addTestSuite(TestRequestFlexerOneInstalledOneBeingInstalled.class);
-		suite.addTestSuite(TestRequestFlexerOneInstalledReplacingIt.class);
-		suite.addTestSuite(TestRequestFlexerOneInstalledTwoBeingInstalled.class);
-		suite.addTestSuite(TestRequestFlexerProduct.class);
-		suite.addTestSuite(TestRequestFlexerProduct2.class);
-		suite.addTestSuite(TestRequestFlexerProductWithLegacyMarkup.class);
-		suite.addTestSuite(TestRequestFlexerProductWithMixedMarkup.class);
-		suite.addTestSuite(TestRequestFlexerRequestWithOptionalInstall.class);
-		suite.addTestSuite(TestRequestFlexerRequestWithRemoval.class);
-		suite.addTestSuite(TestRequestFlexerSharedInstall.class);
-		return suite;
-
-	}
+@RunWith(Suite.class)
+@Suite.SuiteClasses({
+		TestRequestFlexerIUProperties.class, TestRequestFlexerOneInstalledOneBeingInstalled.class,
+		TestRequestFlexerOneInstalledReplacingIt.class, TestRequestFlexerOneInstalledTwoBeingInstalled.class,
+		TestRequestFlexerProduct.class, TestRequestFlexerProduct2.class, TestRequestFlexerProductWithLegacyMarkup.class,
+		TestRequestFlexerProductWithMixedMarkup.class, TestRequestFlexerRequestWithOptionalInstall.class,
+		TestRequestFlexerRequestWithRemoval.class, TestRequestFlexerSharedInstall.class
+})
+public class AllRequestFlexerTests {
+// test suite
 }
diff --git a/bundles/org.eclipse.equinox.p2.tests/src/org/eclipse/equinox/p2/tests/planner/AllTests.java b/bundles/org.eclipse.equinox.p2.tests/src/org/eclipse/equinox/p2/tests/planner/AllTests.java
index 932fce3..572d410 100644
--- a/bundles/org.eclipse.equinox.p2.tests/src/org/eclipse/equinox/p2/tests/planner/AllTests.java
+++ b/bundles/org.eclipse.equinox.p2.tests/src/org/eclipse/equinox/p2/tests/planner/AllTests.java
@@ -7,166 +7,63 @@
  *  https://www.eclipse.org/legal/epl-2.0/
  *
  *  SPDX-License-Identifier: EPL-2.0
- * 
+ *
  *  Contributors:
  *     IBM Corporation - initial API and implementation
  *******************************************************************************/
 package org.eclipse.equinox.p2.tests.planner;
 
-import junit.framework.*;
+import org.junit.runner.RunWith;
+import org.junit.runners.Suite;
 
 /**
  * Performs all automated planner tests.
  */
-public class AllTests extends TestCase {
-
-	public static Test suite() {
-		TestSuite suite = new TestSuite(AllTests.class.getName());
-		suite.addTestSuite(AbsolutePlanTest.class);
-		suite.addTestSuite(ActualChangeRequestTest.class);
-		suite.addTestSuite(ActualChangeRequestTest2.class);
-		suite.addTestSuite(AdditionalConstraints.class);
-		suite.addTestSuite(AddIUProperty.class);
-		suite.addTestSuite(AgentPlanTestInRunningInstance.class);
-		suite.addTestSuite(AgentPlanTestInExternalInstance.class);
-		suite.addTestSuite(AgentPlanTestInExternalInstanceForCohostedMode.class);
-		suite.addTestSuite(AllOptional.class);
-		suite.addTestSuite(AllOrbit.class);
-		suite.addTest(AllRequestFlexerTests.suite());
-		suite.addTestSuite(AnotherSingleton.class);
-		suite.addTestSuite(Bug207319.class);
-		suite.addTestSuite(Bug249605.class);
-		suite.addTestSuite(Bug252638.class);
-		//		suite.addTestSuite(Bug252682.class);
-		suite.addTestSuite(Bug254481dataSet1.class);
-		suite.addTestSuite(Bug254481dataSet2.class);
-		suite.addTestSuite(Bug255984.class);
-		suite.addTestSuite(Bug259537.class);
-		suite.addTestSuite(Bug262580.class);
-		suite.addTestSuite(Bug270656.class);
-		suite.addTestSuite(Bug270668.class);
-		suite.addTestSuite(Bug270683.class);
-		suite.addTestSuite(Bug271067.class);
-		suite.addTestSuite(Bug271954.class);
-		//		suite.addTestSuite(Bug272251.class);
-		suite.addTestSuite(Bug278668.class);
-		suite.addTestSuite(Bug300572.class);
-		suite.addTestSuite(Bug300572Small2.class);
-		suite.addTestSuite(Bug300572Small3.class);
-		suite.addTestSuite(Bug300572Small4.class);
-		suite.addTestSuite(Bug300572Small5.class);
-		suite.addTestSuite(Bug300572Small6.class);
-		suite.addTestSuite(Bug302582.class);
-		suite.addTestSuite(Bug302582b.class);
-		suite.addTestSuite(Bug302582c.class);
-		//		suite.addTestSuite(Bug302582d.class);
-		suite.addTestSuite(Bug306424.class);
-		// suite.addTestSuite(Bug306279.class);
-		// suite.addTestSuite(Bug306279b.class);
-		suite.addTestSuite(Bug306279c.class);
-		suite.addTestSuite(Bug306279d.class);
-		suite.addTestSuite(Bug311330.class);
-		suite.addTestSuite(Bug329279.class);
-		suite.addTestSuite(DependencyOnSelf.class);
-		suite.addTestSuite(DisabledExplanation.class);
-		suite.addTestSuite(DropinsScenario.class);
-		suite.addTestSuite(EPPPackageInstallStability_bug323322.class);
-		suite.addTestSuite(ExplanationDeepConflict.class);
-		suite.addTestSuite(ExplanationForOptionalDependencies.class);
-		suite.addTestSuite(ExplanationForPartialInstallation.class);
-		suite.addTestSuite(ExplanationLargeConflict.class);
-		suite.addTestSuite(ExplanationSeveralConflictingRoots.class);
-		suite.addTestSuite(FindRootsAfterUpdate.class);
-		suite.addTestSuite(FromStrictToOptional.class);
-		suite.addTestSuite(GreedyRequirement.class);
-		suite.addTestSuite(InclusionRuleTest.class);
-		suite.addTestSuite(InclusionRuleTest2.class);
-		suite.addTestSuite(IUProperties.class);
-		suite.addTestSuite(IUPropertyRemoval.class);
-		suite.addTestSuite(IUWithFilter.class);
-		suite.addTestSuite(IUWithFilter2.class);
-		suite.addTestSuite(MinimalInstall.class);
-		suite.addTestSuite(MinimalInstall2.class);
-		suite.addTestSuite(MissingDependency.class);
-		suite.addTestSuite(MissingDependency2.class);
-		suite.addTestSuite(MissingDependency3.class);
-		suite.addTestSuite(MissingNonGreedyRequirement.class);
-		suite.addTestSuite(MissingNonGreedyRequirement2.class);
-		suite.addTestSuite(MissingOptional.class);
-		suite.addTestSuite(MissingOptionalNonGreedyRequirement.class);
-		suite.addTestSuite(MissingOptionalWithDependencies.class);
-		suite.addTestSuite(MissingOptionalWithDependencies2.class);
-		//		suite.addTestSuite(MissingOptionalWithDependencies3.class);	Disabled, see bug 277161
-		//		suite.addTestSuite(NegationTesting.class);
-		suite.addTestSuite(NonMinimalState.class);
-		suite.addTestSuite(NonMinimalState2.class);
-		suite.addTestSuite(NoUnecessaryIUProperty.class);
-		suite.addTestSuite(MultipleProvider.class);
-		suite.addTestSuite(MultipleSingleton.class);
-		suite.addTestSuite(NoRequirements.class);
-		suite.addTestSuite(ORTesting.class);
-		//		suite.addTestSuite(PatchFailingToInstall.class);
-		suite.addTestSuite(PatchTest1.class);
-		suite.addTestSuite(PatchTest10.class);
-		suite.addTestSuite(PatchTest11.class);
-		suite.addTestSuite(PatchTest12.class);
-		suite.addTestSuite(PatchTest13.class);
-		suite.addTestSuite(PatchTest1b.class);
-		suite.addTestSuite(PatchTest1c.class);
-		suite.addTestSuite(PatchTest2.class);
-		suite.addTestSuite(PatchTest3.class);
-		suite.addTestSuite(PatchTest4.class);
-		suite.addTestSuite(PatchTest5.class);
-		suite.addTestSuite(PatchTest6.class);
-		suite.addTestSuite(PatchTest7.class);
-		suite.addTestSuite(PatchTest7b.class);
-		suite.addTestSuite(PatchTest8.class);
-		suite.addTestSuite(PatchTest9.class);
-		suite.addTestSuite(PatchTest10.class);
-		suite.addTestSuite(PatchTest12.class);
-		suite.addTestSuite(PatchTestMultiplePatch.class);
-		suite.addTestSuite(PatchTestMultiplePatch2.class);
-		suite.addTestSuite(PatchTestMultiplePatch3.class);
-		suite.addTestSuite(PatchTestOptional.class);
-		suite.addTestSuite(PatchTestOptional2.class);
-		suite.addTestSuite(PatchTestOptional3.class);
-		suite.addTestSuite(PatchTestUninstall.class);
-		suite.addTestSuite(PatchTestUpdate.class);
-		suite.addTestSuite(PatchTestUpdate2.class);
-		suite.addTestSuite(PatchTestUpdate3.class);
-		suite.addTestSuite(PatchTestUpdate4.class);
-		suite.addTestSuite(PatchTestUpdate5.class);
-		suite.addTestSuite(PatchTestUsingNegativeRequirement.class);
-		suite.addTestSuite(PermissiveSlicerTest.class);
-		suite.addTestSuite(PP2ShouldFailToInstall.class);
-		suite.addTestSuite(ResolvedIUInPCR.class);
-		//		suite.addTestSuite(ProvisioningPlanQueryTest.class); disabled, see bug 313812 
-		suite.addTestSuite(SDKPatchingTest1.class);
-		suite.addTestSuite(SDKPatchingTest2.class);
-		suite.addTestSuite(SeveralOptionalDependencies.class);
-		suite.addTestSuite(SeveralOptionalDependencies2.class);
-		suite.addTestSuite(SeveralOptionalDependencies3.class);
-		suite.addTestSuite(SeveralOptionalDependencies4.class);
-		suite.addTestSuite(SeveralOptionalDependencies5.class);
-		suite.addTestSuite(SimpleOptionalTest.class);
-		suite.addTestSuite(SimpleOptionalTest2.class);
-		suite.addTestSuite(SimpleOptionalTest3.class);
-		suite.addTestSuite(SimpleOptionalTest4.class);
-		suite.addTestSuite(SimpleOptionalTest5.class);
-		suite.addTestSuite(SimpleSingleton.class);
-		suite.addTestSuite(SimulatedSharedInstallTest.class);
-		suite.addTestSuite(SingletonOptionallyInstalled.class);
-		suite.addTestSuite(SingletonOptionallyInstalled2.class);
-		suite.addTestSuite(SWTFragment.class);
-		suite.addTestSuite(SynchronizeOperationTest.class);
-		suite.addTestSuite(TestNoopChangeRequest.class);
-		suite.addTestSuite(TestFilteringOnAbsentProperty.class);
-		suite.addTestSuite(TopLevelFilterTest.class);
-		suite.addTestSuite(TwoVersionsOfWSDL.class);
-		suite.addTestSuite(TychoUsage.class);
-		suite.addTestSuite(UninstallEverything.class);
-		suite.addTestSuite(UpdateForTwoIUs.class);
-		suite.addTestSuite(UpdateQueryTest.class);
-		return suite;
-	}
+@RunWith(Suite.class)
+@Suite.SuiteClasses({ AbsolutePlanTest.class, ActualChangeRequestTest.class, ActualChangeRequestTest2.class,
+		AdditionalConstraints.class, AddIUProperty.class, AgentPlanTestInRunningInstance.class,
+		AgentPlanTestInExternalInstance.class, AgentPlanTestInExternalInstanceForCohostedMode.class, AllOptional.class,
+		AllOrbit.class, AllRequestFlexerTests.class, AnotherSingleton.class, Bug207319.class, Bug249605.class,
+		Bug252638.class, Bug254481dataSet1.class, Bug254481dataSet2.class, Bug255984.class, Bug259537.class,
+		Bug262580.class, Bug270656.class, Bug270668.class, Bug270683.class, Bug271067.class, Bug271954.class,
+		Bug278668.class, Bug300572.class, Bug300572Small2.class, Bug300572Small3.class, Bug300572Small4.class,
+		Bug300572Small5.class, Bug300572Small6.class, Bug302582.class, Bug302582b.class, Bug302582c.class,
+		Bug306424.class, Bug306279c.class, Bug306279d.class, Bug311330.class, Bug329279.class, DependencyOnSelf.class,
+		DisabledExplanation.class, DropinsScenario.class, EPPPackageInstallStability_bug323322.class,
+		ExplanationDeepConflict.class, ExplanationForOptionalDependencies.class,
+		ExplanationForPartialInstallation.class, ExplanationLargeConflict.class,
+		ExplanationSeveralConflictingRoots.class, FindRootsAfterUpdate.class, FromStrictToOptional.class,
+		GreedyRequirement.class, InclusionRuleTest.class, InclusionRuleTest2.class, IUProperties.class,
+		IUPropertyRemoval.class, IUWithFilter.class, IUWithFilter2.class, MinimalInstall.class, MinimalInstall2.class,
+		MissingDependency.class, MissingDependency2.class, MissingDependency3.class, MissingNonGreedyRequirement.class,
+		MissingNonGreedyRequirement2.class, MissingOptional.class, MissingOptionalNonGreedyRequirement.class,
+		MissingOptionalWithDependencies.class, MissingOptionalWithDependencies2.class, NonMinimalState.class,
+		NonMinimalState2.class, NoUnecessaryIUProperty.class, MultipleProvider.class, MultipleSingleton.class,
+		NoRequirements.class, ORTesting.class, PatchTest1.class, PatchTest10.class, PatchTest11.class,
+		PatchTest12.class, PatchTest13.class, PatchTest1b.class, PatchTest1c.class, PatchTest2.class, PatchTest3.class,
+		PatchTest4.class, PatchTest5.class, PatchTest6.class, PatchTest7.class, PatchTest7b.class, PatchTest8.class,
+		PatchTest9.class, PatchTest10.class, PatchTest12.class, PatchTestMultiplePatch.class,
+		PatchTestMultiplePatch2.class, PatchTestMultiplePatch3.class, PatchTestOptional.class, PatchTestOptional2.class,
+		PatchTestOptional3.class, PatchTestUninstall.class, PatchTestUpdate.class, PatchTestUpdate2.class,
+		PatchTestUpdate3.class, PatchTestUpdate4.class, PatchTestUpdate5.class, PatchTestUsingNegativeRequirement.class,
+		PermissiveSlicerTest.class, PP2ShouldFailToInstall.class, ResolvedIUInPCR.class, SDKPatchingTest1.class,
+		SDKPatchingTest2.class, SeveralOptionalDependencies.class, SeveralOptionalDependencies2.class,
+		SeveralOptionalDependencies3.class, SeveralOptionalDependencies4.class, SeveralOptionalDependencies5.class,
+		SimpleOptionalTest.class, SimpleOptionalTest2.class, SimpleOptionalTest3.class, SimpleOptionalTest4.class,
+		SimpleOptionalTest5.class, SimpleSingleton.class, SimulatedSharedInstallTest.class,
+		SingletonOptionallyInstalled.class, SingletonOptionallyInstalled2.class, SWTFragment.class,
+		SynchronizeOperationTest.class, TestNoopChangeRequest.class, TestFilteringOnAbsentProperty.class,
+		TopLevelFilterTest.class, TwoVersionsOfWSDL.class, TychoUsage.class, UninstallEverything.class,
+		UpdateForTwoIUs.class, UpdateQueryTest.class, })
+public class AllTests {
+// Enable the following
+// Bug252682.class,
+// Bug272251.class,
+// Bug302582d.class,
+// Bug306279.class,
+// Bug306279b.class,
+// MissingOptionalWithDependencies3.class, Disabled, see bug 277161
+// NegationTesting.class,
+// PatchFailingToInstall.class,
+// ProvisioningPlanQueryTest.class, disabled, see bug 313812
 }
\ No newline at end of file
diff --git a/bundles/org.eclipse.equinox.p2.tests/src/org/eclipse/equinox/p2/tests/publisher/AllTests.java b/bundles/org.eclipse.equinox.p2.tests/src/org/eclipse/equinox/p2/tests/publisher/AllTests.java
index 62aaf5e..1ff8fef 100644
--- a/bundles/org.eclipse.equinox.p2.tests/src/org/eclipse/equinox/p2/tests/publisher/AllTests.java
+++ b/bundles/org.eclipse.equinox.p2.tests/src/org/eclipse/equinox/p2/tests/publisher/AllTests.java
@@ -8,50 +8,54 @@
  * https://www.eclipse.org/legal/epl-2.0/
  *
  * SPDX-License-Identifier: EPL-2.0
- * 
- * Contributors: 
+ *
+ * Contributors:
  *   Code 9 - initial API and implementation
  *   IBM - ongoing development
  *   SAP AG - ongoing development
  ******************************************************************************/
 package org.eclipse.equinox.p2.tests.publisher;
 
-import junit.framework.*;
-import org.eclipse.equinox.p2.tests.publisher.actions.*;
+import org.eclipse.equinox.p2.tests.publisher.actions.ANYConfigCUsActionTest;
+import org.eclipse.equinox.p2.tests.publisher.actions.AbstractPublisherActionTest;
+import org.eclipse.equinox.p2.tests.publisher.actions.AccumulateConfigDataActionTest;
+import org.eclipse.equinox.p2.tests.publisher.actions.AdviceFileParserTest;
+import org.eclipse.equinox.p2.tests.publisher.actions.BundlesActionTest;
+import org.eclipse.equinox.p2.tests.publisher.actions.CategoryPublisherTest;
+import org.eclipse.equinox.p2.tests.publisher.actions.ConfigCUsActionTest;
+import org.eclipse.equinox.p2.tests.publisher.actions.ContextRepositoryTest;
+import org.eclipse.equinox.p2.tests.publisher.actions.DefaultCUsActionTest;
+import org.eclipse.equinox.p2.tests.publisher.actions.EquinoxExecutableActionTest;
+import org.eclipse.equinox.p2.tests.publisher.actions.EquinoxLauncherCUActionTest;
+import org.eclipse.equinox.p2.tests.publisher.actions.FeaturesActionTest;
+import org.eclipse.equinox.p2.tests.publisher.actions.JREActionTest;
+import org.eclipse.equinox.p2.tests.publisher.actions.LocalUpdateSiteActionTest;
+import org.eclipse.equinox.p2.tests.publisher.actions.LocalizationTests;
+import org.eclipse.equinox.p2.tests.publisher.actions.MD5GenerationTest;
+import org.eclipse.equinox.p2.tests.publisher.actions.ProductActionCapturingTest;
+import org.eclipse.equinox.p2.tests.publisher.actions.ProductActionTest;
+import org.eclipse.equinox.p2.tests.publisher.actions.ProductActionTestMac;
+import org.eclipse.equinox.p2.tests.publisher.actions.ProductActionWithJRELocationTest;
+import org.eclipse.equinox.p2.tests.publisher.actions.ProductContentTypeTest;
+import org.eclipse.equinox.p2.tests.publisher.actions.ProductFileAdviceTest;
+import org.eclipse.equinox.p2.tests.publisher.actions.ProductFileTest;
+import org.eclipse.equinox.p2.tests.publisher.actions.RootFilesActionTest;
+import org.eclipse.equinox.p2.tests.publisher.actions.RootIUActionTest;
+import org.eclipse.equinox.p2.tests.publisher.actions.VersionAdviceTest;
+import org.junit.runner.RunWith;
+import org.junit.runners.Suite;
 
-public class AllTests extends TestCase {
 
-	public static Test suite() {
-		TestSuite suite = new TestSuite(AllTests.class.getName());
-		suite.addTestSuite(AbstractPublisherActionTest.class);
-		suite.addTestSuite(AccumulateConfigDataActionTest.class);
-		suite.addTestSuite(AdviceFileParserTest.class);
-		suite.addTestSuite(ANYConfigCUsActionTest.class);
-		suite.addTestSuite(BundlesActionTest.class);
-		suite.addTestSuite(CategoryPublisherTest.class);
-		suite.addTestSuite(ConfigCUsActionTest.class);
-		suite.addTestSuite(ContextRepositoryTest.class);
-		suite.addTestSuite(DefaultCUsActionTest.class);
-		suite.addTestSuite(EquinoxExecutableActionTest.class);
-		suite.addTestSuite(EquinoxLauncherCUActionTest.class);
-		suite.addTestSuite(FeaturesActionTest.class);
-		suite.addTestSuite(JREActionTest.class);
-		suite.addTestSuite(LocalizationTests.class);
-		suite.addTestSuite(LocalUpdateSiteActionTest.class);
-		suite.addTestSuite(MD5GenerationTest.class);
-		suite.addTest(new JUnit4TestAdapter(ChecksumGenerationTest.class));
-		suite.addTestSuite(ProductActionTest.class);
-		suite.addTestSuite(ProductActionCapturingTest.class);
-		suite.addTestSuite(ProductActionTestMac.class);
-		suite.addTestSuite(ProductActionWithJRELocationTest.class);
-		suite.addTestSuite(ProductContentTypeTest.class);
-		suite.addTestSuite(ProductFileAdviceTest.class);
-		suite.addTestSuite(ProductFileTest.class);
-		suite.addTestSuite(RootFilesActionTest.class);
-		suite.addTestSuite(RootIUActionTest.class);
-		suite.addTestSuite(GeneralPublisherTests.class);
-		suite.addTestSuite(VersionAdviceTest.class);
-		return suite;
-	}
-
+@RunWith(Suite.class)
+@Suite.SuiteClasses({ AbstractPublisherActionTest.class, AccumulateConfigDataActionTest.class,
+		AdviceFileParserTest.class, ANYConfigCUsActionTest.class, BundlesActionTest.class, CategoryPublisherTest.class,
+		ConfigCUsActionTest.class, ContextRepositoryTest.class, DefaultCUsActionTest.class,
+		EquinoxExecutableActionTest.class, EquinoxLauncherCUActionTest.class, FeaturesActionTest.class,
+		JREActionTest.class, LocalizationTests.class, LocalUpdateSiteActionTest.class, MD5GenerationTest.class,
+		ChecksumGenerationTest.class, ProductActionTest.class, ProductActionCapturingTest.class,
+		ProductActionTestMac.class, ProductActionWithJRELocationTest.class, ProductContentTypeTest.class,
+		ProductFileAdviceTest.class, ProductFileTest.class, RootFilesActionTest.class, RootIUActionTest.class,
+		GeneralPublisherTests.class, VersionAdviceTest.class })
+public class AllTests {
+// test suite
 }
\ No newline at end of file
diff --git a/bundles/org.eclipse.equinox.p2.tests/src/org/eclipse/equinox/p2/tests/ql/AllTests.java b/bundles/org.eclipse.equinox.p2.tests/src/org/eclipse/equinox/p2/tests/ql/AllTests.java
index a5d3ec5..3976f2b 100644
--- a/bundles/org.eclipse.equinox.p2.tests/src/org/eclipse/equinox/p2/tests/ql/AllTests.java
+++ b/bundles/org.eclipse.equinox.p2.tests/src/org/eclipse/equinox/p2/tests/ql/AllTests.java
@@ -7,25 +7,20 @@
  *  https://www.eclipse.org/legal/epl-2.0/
  *
  *  SPDX-License-Identifier: EPL-2.0
- * 
+ *
  *  Contributors:
  *     IBM Corporation - initial API and implementation
  *******************************************************************************/
 package org.eclipse.equinox.p2.tests.ql;
 
-import junit.framework.*;
+import org.junit.runner.RunWith;
+import org.junit.runners.Suite;
 
 /**
  * Performs all automated director tests.
  */
-public class AllTests extends TestCase {
-
-	public static Test suite() {
-		TestSuite suite = new TestSuite(AllTests.class.getName());
-		suite.addTestSuite(EvaluatorTest.class);
-		suite.addTestSuite(PerformanceTest.class);
-		suite.addTestSuite(TestQueryReimplementation.class);
-		return suite;
-	}
-
+@RunWith(Suite.class)
+@Suite.SuiteClasses({ EvaluatorTest.class, PerformanceTest.class, TestQueryReimplementation.class })
+public class AllTests {
+// test suite
 }
diff --git a/bundles/org.eclipse.equinox.p2.tests/src/org/eclipse/equinox/p2/tests/repository/AllTests.java b/bundles/org.eclipse.equinox.p2.tests/src/org/eclipse/equinox/p2/tests/repository/AllTests.java
index 7ce9da5..69be7b1 100644
--- a/bundles/org.eclipse.equinox.p2.tests/src/org/eclipse/equinox/p2/tests/repository/AllTests.java
+++ b/bundles/org.eclipse.equinox.p2.tests/src/org/eclipse/equinox/p2/tests/repository/AllTests.java
@@ -1,32 +1,27 @@
 /*******************************************************************************
  * Copyright (c) 2009, 2018 Cloudsmith Inc and others.
  *
- * This program and the accompanying materials 
+ * This program and the accompanying materials
  * are made available under the terms of the Eclipse Public License 2.0
  * which accompanies this distribution, and is available at
  * https://www.eclipse.org/legal/epl-2.0/
  *
  * SPDX-License-Identifier: EPL-2.0
- * 
+ *
  * Contributors:
  *     Cloudsmith Inc - initial API and implementation
  *******************************************************************************/
 package org.eclipse.equinox.p2.tests.repository;
 
-import junit.framework.*;
+import org.junit.runner.RunWith;
+import org.junit.runners.Suite;
 
 /**
  * Performs all automated repository bundle tests.
  */
-public class AllTests extends TestCase {
-
-	public static Test suite() {
-		TestSuite suite = new TestSuite(AllTests.class.getName());
-		suite.addTestSuite(CacheManagerTest.class);
-		suite.addTestSuite(RepositoryHelperTest.class);
-		suite.addTestSuite(RepositoryExtensionPointTest.class);
-		suite.addTestSuite(FileReaderTest2.class);
-		suite.addTest(new JUnit4TestAdapter(ChecksumHelperTest.class));
-		return suite;
-	}
+@RunWith(Suite.class)
+@Suite.SuiteClasses({ CacheManagerTest.class, RepositoryHelperTest.class, RepositoryExtensionPointTest.class,
+		FileReaderTest2.class, ChecksumHelperTest.class })
+public class AllTests {
+	// test suite
 }
diff --git a/bundles/org.eclipse.equinox.p2.tests/src/org/eclipse/equinox/p2/tests/sat4j/smoke/AllTests.java b/bundles/org.eclipse.equinox.p2.tests/src/org/eclipse/equinox/p2/tests/sat4j/smoke/AllTests.java
index 7924082..e10f379 100644
--- a/bundles/org.eclipse.equinox.p2.tests/src/org/eclipse/equinox/p2/tests/sat4j/smoke/AllTests.java
+++ b/bundles/org.eclipse.equinox.p2.tests/src/org/eclipse/equinox/p2/tests/sat4j/smoke/AllTests.java
@@ -7,19 +7,17 @@
  *  https://www.eclipse.org/legal/epl-2.0/
  *
  *  SPDX-License-Identifier: EPL-2.0
- * 
+ *
  *  Contributors:
  *      IBM Corporation - initial API and implementation
  *******************************************************************************/
 package org.eclipse.equinox.p2.tests.sat4j.smoke;
 
-import junit.framework.*;
+import org.junit.runner.RunWith;
+import org.junit.runners.Suite;
 
-public class AllTests extends TestCase {
-
-	public static Test suite() {
-		TestSuite suite = new TestSuite(AllTests.class.getName());
-		suite.addTestSuite(SmokeTestSAT4J.class);
-		return suite;
-	}
+@RunWith(Suite.class)
+@Suite.SuiteClasses({ SmokeTestSAT4J.class })
+public class AllTests {
+	// test suite
 }
diff --git a/bundles/org.eclipse.equinox.p2.tests/src/org/eclipse/equinox/p2/tests/simpleconfigurator/manipulator/AllTests.java b/bundles/org.eclipse.equinox.p2.tests/src/org/eclipse/equinox/p2/tests/simpleconfigurator/manipulator/AllTests.java
index d8d1d24..5624df5 100644
--- a/bundles/org.eclipse.equinox.p2.tests/src/org/eclipse/equinox/p2/tests/simpleconfigurator/manipulator/AllTests.java
+++ b/bundles/org.eclipse.equinox.p2.tests/src/org/eclipse/equinox/p2/tests/simpleconfigurator/manipulator/AllTests.java
@@ -1,29 +1,26 @@
 /*******************************************************************************
  * Copyright (c) 2008 IBM Corporation and others.
  *
- * This program and the accompanying materials 
+ * This program and the accompanying materials
  * are made available under the terms of the Eclipse Public License 2.0
  * which accompanies this distribution, and is available at
  * https://www.eclipse.org/legal/epl-2.0/
  *
  * SPDX-License-Identifier: EPL-2.0
- * 
+ *
  * Contributors:
  *     IBM Corporation - initial API and implementation
  *******************************************************************************/
 package org.eclipse.equinox.p2.tests.simpleconfigurator.manipulator;
 
-import junit.framework.*;
+import org.junit.runner.RunWith;
+import org.junit.runners.Suite;
 
 /**
  * Performs all automated director tests.
  */
-public class AllTests extends TestCase {
-
-	public static Test suite() {
-		TestSuite suite = new TestSuite(AllTests.class.getName());
-		suite.addTestSuite(SimpleConfiguratorManipulatorUtilsTest.class);
-		suite.addTestSuite(SimpleConfiguratorManipulatorTests.class);
-		return suite;
-	}
+@RunWith(Suite.class)
+@Suite.SuiteClasses({ SimpleConfiguratorManipulatorUtilsTest.class, SimpleConfiguratorManipulatorTests.class })
+public class AllTests {
+// test suite
 }
diff --git a/bundles/org.eclipse.equinox.p2.tests/src/org/eclipse/equinox/p2/tests/touchpoint/eclipse/AllTests.java b/bundles/org.eclipse.equinox.p2.tests/src/org/eclipse/equinox/p2/tests/touchpoint/eclipse/AllTests.java
index ba4e47a..48d9543 100644
--- a/bundles/org.eclipse.equinox.p2.tests/src/org/eclipse/equinox/p2/tests/touchpoint/eclipse/AllTests.java
+++ b/bundles/org.eclipse.equinox.p2.tests/src/org/eclipse/equinox/p2/tests/touchpoint/eclipse/AllTests.java
@@ -1,54 +1,37 @@
 /*******************************************************************************
  * Copyright (c) 2008, 2011 IBM Corporation and others.
  *
- * This program and the accompanying materials 
+ * This program and the accompanying materials
  * are made available under the terms of the Eclipse Public License 2.0
  * which accompanies this distribution, and is available at
  * https://www.eclipse.org/legal/epl-2.0/
  *
  * SPDX-License-Identifier: EPL-2.0
- * 
+ *
  * Contributors:
  *     IBM Corporation - initial API and implementation
  *******************************************************************************/
 package org.eclipse.equinox.p2.tests.touchpoint.eclipse;
 
-import junit.framework.*;
+import org.junit.runner.RunWith;
+import org.junit.runners.Suite;
 
 /**
  * Performs all automated touchpoint tests.
  */
-public class AllTests extends TestCase {
-
-	public static Test suite() {
-		TestSuite suite = new TestSuite(AllTests.class.getName());
-		suite.addTestSuite(EclipseTouchpointTest.class);
-		suite.addTestSuite(AddJVMArgumentActionTest.class);
-		suite.addTestSuite(AddProgramArgumentActionTest.class);
-		suite.addTestSuite(AddProgramPropertyActionTest.class);
-		suite.addTestSuite(AddRepositoryActionTest.class);
-		suite.addTestSuite(AddSourceBundleActionTest.class);
-		suite.addTestSuite(CheckTrustActionTest.class);
-		suite.addTestSuite(ChmodActionTest.class);
-		suite.addTestSuite(CollectActionTest.class);
-		suite.addTestSuite(InstallBundleActionTest.class);
-		suite.addTestSuite(InstallFeatureActionTest.class);
-		suite.addTestSuite(JVMArgumentActionLogicTest.class);
-		suite.addTestSuite(LinkActionTest.class);
-		suite.addTestSuite(MarkStartedActionTest.class);
-		suite.addTestSuite(PathUtilTest.class);
-		suite.addTestSuite(RemoveJVMArgumentActionTest.class);
-		suite.addTestSuite(RemoveProgramArgumentActionTest.class);
-		suite.addTestSuite(RemoveProgramPropertyActionTest.class);
-		suite.addTestSuite(RemoveRepositoryActionTest.class);
-		suite.addTestSuite(RemoveSourceBundleActionTest.class);
-		suite.addTestSuite(SetFrameworkDependentPropertyActionTest.class);
-		suite.addTestSuite(SetFrameworkIndependentPropertyActionTest.class);
-		suite.addTestSuite(SetLauncherNameActionTest.class);
-		suite.addTestSuite(SetProgramPropertyActionTest.class);
-		suite.addTestSuite(SetStartLevelActionTest.class);
-		suite.addTestSuite(UninstallBundleActionTest.class);
-		suite.addTestSuite(UninstallFeatureActionTest.class);
-		return suite;
-	}
+@RunWith(Suite.class)
+@Suite.SuiteClasses({
+		EclipseTouchpointTest.class, AddJVMArgumentActionTest.class, AddProgramArgumentActionTest.class,
+		AddProgramPropertyActionTest.class, AddRepositoryActionTest.class, AddSourceBundleActionTest.class,
+		CheckTrustActionTest.class, ChmodActionTest.class, CollectActionTest.class, InstallBundleActionTest.class,
+		InstallFeatureActionTest.class, JVMArgumentActionLogicTest.class, LinkActionTest.class,
+		MarkStartedActionTest.class, PathUtilTest.class, RemoveJVMArgumentActionTest.class,
+		RemoveProgramArgumentActionTest.class, RemoveProgramPropertyActionTest.class, RemoveRepositoryActionTest.class,
+		RemoveSourceBundleActionTest.class, SetFrameworkDependentPropertyActionTest.class,
+		SetFrameworkIndependentPropertyActionTest.class, SetLauncherNameActionTest.class,
+		SetProgramPropertyActionTest.class, SetStartLevelActionTest.class, UninstallBundleActionTest.class,
+		UninstallFeatureActionTest.class
+})
+public class AllTests {
+	// test suite
 }
diff --git a/bundles/org.eclipse.equinox.p2.tests/src/org/eclipse/equinox/p2/tests/touchpoint/natives/AllTests.java b/bundles/org.eclipse.equinox.p2.tests/src/org/eclipse/equinox/p2/tests/touchpoint/natives/AllTests.java
index 8671054..08ffbaf 100644
--- a/bundles/org.eclipse.equinox.p2.tests/src/org/eclipse/equinox/p2/tests/touchpoint/natives/AllTests.java
+++ b/bundles/org.eclipse.equinox.p2.tests/src/org/eclipse/equinox/p2/tests/touchpoint/natives/AllTests.java
@@ -7,33 +7,25 @@
  *  https://www.eclipse.org/legal/epl-2.0/
  *
  *  SPDX-License-Identifier: EPL-2.0
- * 
+ *
  *  Contributors:
  *     IBM Corporation - initial API and implementation
  *******************************************************************************/
 package org.eclipse.equinox.p2.tests.touchpoint.natives;
 
-import junit.framework.*;
+import org.junit.runner.RunWith;
+import org.junit.runners.Suite;
 
 /**
  * Performs all automated director tests.
  */
-public class AllTests extends TestCase {
-
-	public static Test suite() {
-		TestSuite suite = new TestSuite(AllTests.class.getName());
-		suite.addTestSuite(ChmodActionTest.class);
-		suite.addTestSuite(CleanupzipActionTest.class);
-		suite.addTestSuite(CollectActionTest.class);
-		suite.addTestSuite(LinkActionTest.class);
-		suite.addTestSuite(MkdirActionTest.class);
-		suite.addTestSuite(NativeTouchpointTest.class);
-		suite.addTestSuite(RmdirActionTest.class);
-		suite.addTestSuite(UnzipActionTest.class);
-		suite.addTestSuite(CopyActionTest.class);
-		suite.addTestSuite(RemoveActionTest.class);
-		suite.addTestSuite(BackupStoreTest.class);
-		suite.addTest(new JUnit4TestAdapter(CheckAndPromptNativePackageWindowsRegistryTest.class));
-		return suite;
-	}
+@RunWith(Suite.class)
+@Suite.SuiteClasses({
+		ChmodActionTest.class, CleanupzipActionTest.class, CollectActionTest.class, LinkActionTest.class,
+		MkdirActionTest.class, NativeTouchpointTest.class, RmdirActionTest.class, UnzipActionTest.class,
+		CopyActionTest.class, RemoveActionTest.class, BackupStoreTest.class,
+		CheckAndPromptNativePackageWindowsRegistryTest.class
+})
+public class AllTests {
+// test suite
 }
diff --git a/bundles/org.eclipse.equinox.p2.tests/src/org/eclipse/equinox/p2/tests/updatechecker/AllTests.java b/bundles/org.eclipse.equinox.p2.tests/src/org/eclipse/equinox/p2/tests/updatechecker/AllTests.java
index a43140d..7f0607d 100644
--- a/bundles/org.eclipse.equinox.p2.tests/src/org/eclipse/equinox/p2/tests/updatechecker/AllTests.java
+++ b/bundles/org.eclipse.equinox.p2.tests/src/org/eclipse/equinox/p2/tests/updatechecker/AllTests.java
@@ -7,21 +7,20 @@
  * https://www.eclipse.org/legal/epl-2.0/
  *
  * SPDX-License-Identifier: EPL-2.0
- * 
+ *
  * Contributors:
  *     IBM Corporation - initial API and implementation
  *******************************************************************************/
 package org.eclipse.equinox.p2.tests.updatechecker;
 
-import junit.framework.*;
+import org.junit.runner.RunWith;
+import org.junit.runners.Suite;
 
 /**
  * All automated tests for the org.eclipse.equinox.p2.updatechecker bundle
  */
-public class AllTests extends TestCase {
-	public static Test suite() {
-		TestSuite suite = new TestSuite(AllTests.class.getName());
-		suite.addTestSuite(UpdateCheckerTest.class);
-		return suite;
-	}
+@RunWith(Suite.class)
+@Suite.SuiteClasses({ UpdateCheckerTest.class })
+public class AllTests {
+	// test suite
 }
diff --git a/bundles/org.eclipse.equinox.p2.tests/src/org/eclipse/equinox/p2/tests/updatesite/AllTests.java b/bundles/org.eclipse.equinox.p2.tests/src/org/eclipse/equinox/p2/tests/updatesite/AllTests.java
index 0a20506..7327d7b 100644
--- a/bundles/org.eclipse.equinox.p2.tests/src/org/eclipse/equinox/p2/tests/updatesite/AllTests.java
+++ b/bundles/org.eclipse.equinox.p2.tests/src/org/eclipse/equinox/p2/tests/updatesite/AllTests.java
@@ -7,28 +7,21 @@
  *  https://www.eclipse.org/legal/epl-2.0/
  *
  *  SPDX-License-Identifier: EPL-2.0
- * 
+ *
  *  Contributors:
  *     IBM Corporation - initial API and implementation
  *******************************************************************************/
 package org.eclipse.equinox.p2.tests.updatesite;
 
-import junit.framework.*;
+import org.junit.runner.RunWith;
+import org.junit.runners.Suite;
 
 /**
  * Performs all automated director tests.
  */
-public class AllTests extends TestCase {
-
-	public static Test suite() {
-		TestSuite suite = new TestSuite(AllTests.class.getName());
-		suite.addTestSuite(CategoryXMLActionTest.class);
-		suite.addTestSuite(CategoryIUXMLActionTest.class);
-		suite.addTestSuite(DoesNotCacheStaleData.class);
-		suite.addTestSuite(SiteXMLActionTest.class);
-		suite.addTestSuite(UpdateSiteTest.class);
-		suite.addTestSuite(LocalUpdatesiteTest.class);
-		return suite;
-	}
-
+@RunWith(Suite.class)
+@Suite.SuiteClasses({ CategoryXMLActionTest.class, CategoryIUXMLActionTest.class, DoesNotCacheStaleData.class,
+		SiteXMLActionTest.class, UpdateSiteTest.class, LocalUpdatesiteTest.class, })
+public class AllTests {
+//test suite
 }