Bug 558313 - migrate from junit 3 to 4, reduce static initializations

Some project resources that have a lifecycle bound to the @Rule
are currently accessed via static methods. Try to change that in a few
cases.

Change-Id: I79f979a37a2c418b8a660f82796356b3b3bb03d2
Signed-off-by: Carsten Hammer <carsten.hammer@t-online.de>
diff --git a/org.eclipse.jdt.text.tests/src/org/eclipse/jdt/text/tests/BreakContinueTargetFinderTest.java b/org.eclipse.jdt.text.tests/src/org/eclipse/jdt/text/tests/BreakContinueTargetFinderTest.java
index 3fd8a7e..b42212b 100644
--- a/org.eclipse.jdt.text.tests/src/org/eclipse/jdt/text/tests/BreakContinueTargetFinderTest.java
+++ b/org.eclipse.jdt.text.tests/src/org/eclipse/jdt/text/tests/BreakContinueTargetFinderTest.java
@@ -62,13 +62,13 @@
 		fParser = ASTParser.newParser(IASTSharedValues.SHARED_AST_LEVEL);
 		fFinder= new BreakContinueTargetFinder();
 
-		fJProject1= ProjectTestSetup.getProject();
+		fJProject1= pts.getProject();
 		fSourceFolder= JavaProjectHelper.addSourceContainer(fJProject1, "src");
 	}
 
 	@After
 	public void tearDown() throws Exception {
-		JavaProjectHelper.clear(fJProject1, ProjectTestSetup.getDefaultClasspath());
+		JavaProjectHelper.clear(fJProject1, pts.getDefaultClasspath());
 	}
 
 	private OccurrenceLocation[] getHighlights(StringBuffer source, int offset, int length) throws Exception {
diff --git a/org.eclipse.jdt.text.tests/src/org/eclipse/jdt/text/tests/MarkOccurrenceTest1d7.java b/org.eclipse.jdt.text.tests/src/org/eclipse/jdt/text/tests/MarkOccurrenceTest1d7.java
index 3d3d429..a8e61d9 100644
--- a/org.eclipse.jdt.text.tests/src/org/eclipse/jdt/text/tests/MarkOccurrenceTest1d7.java
+++ b/org.eclipse.jdt.text.tests/src/org/eclipse/jdt/text/tests/MarkOccurrenceTest1d7.java
@@ -67,7 +67,7 @@
 	public void setUp() throws Exception {
 		fParser= ASTParser.newParser(IASTSharedValues.SHARED_AST_LEVEL);
 
-		fJProject1= Java1d7ProjectTestSetup.getProject();
+		fJProject1= j7s.getProject();
 		fSourceFolder= JavaProjectHelper.addSourceContainer(fJProject1, "src");
 		JavaPlugin.getDefault().getPreferenceStore().setValue(PreferenceConstants.EDITOR_MARK_OCCURRENCES, true);
 		JavaPlugin.getDefault().getPreferenceStore().setValue(PreferenceConstants.EDITOR_MARK_IMPLEMENTORS, true);
@@ -75,7 +75,7 @@
 
 	@After
 	public void tearDown() throws Exception {
-		JavaProjectHelper.clear(fJProject1, Java1d7ProjectTestSetup.getDefaultClasspath());
+		JavaProjectHelper.clear(fJProject1, j7s.getDefaultClasspath());
 	}
 
 	private OccurrenceLocation[] getHighlights(StringBuffer source, int offset, int length) throws Exception {
diff --git a/org.eclipse.jdt.text.tests/src/org/eclipse/jdt/text/tests/MarkOccurrenceTest1d8.java b/org.eclipse.jdt.text.tests/src/org/eclipse/jdt/text/tests/MarkOccurrenceTest1d8.java
index 9b6cd05..0f3d910 100644
--- a/org.eclipse.jdt.text.tests/src/org/eclipse/jdt/text/tests/MarkOccurrenceTest1d8.java
+++ b/org.eclipse.jdt.text.tests/src/org/eclipse/jdt/text/tests/MarkOccurrenceTest1d8.java
@@ -66,14 +66,14 @@
 	public void setUp() throws Exception {
 		fParser= ASTParser.newParser(IASTSharedValues.SHARED_AST_LEVEL);
 
-		fJProject1= Java1d8ProjectTestSetup.getProject();
+		fJProject1= f18p.getProject();
 		fSourceFolder= JavaProjectHelper.addSourceContainer(fJProject1, "src");
 		JavaPlugin.getDefault().getPreferenceStore().setValue(PreferenceConstants.EDITOR_MARK_OCCURRENCES, true);
 	}
 
 	@After
 	public void tearDown() throws Exception {
-		JavaProjectHelper.clear(fJProject1, Java1d8ProjectTestSetup.getDefaultClasspath());
+		JavaProjectHelper.clear(fJProject1, f18p.getDefaultClasspath());
 	}
 
 	private OccurrenceLocation[] getHighlights(String source, int offset, int length) throws Exception {
diff --git a/org.eclipse.jdt.text.tests/src/org/eclipse/jdt/text/tests/PropertiesFileAutoEditStrategyTest.java b/org.eclipse.jdt.text.tests/src/org/eclipse/jdt/text/tests/PropertiesFileAutoEditStrategyTest.java
index 4e7cefa..f2825f6 100644
--- a/org.eclipse.jdt.text.tests/src/org/eclipse/jdt/text/tests/PropertiesFileAutoEditStrategyTest.java
+++ b/org.eclipse.jdt.text.tests/src/org/eclipse/jdt/text/tests/PropertiesFileAutoEditStrategyTest.java
@@ -77,7 +77,7 @@
 	@Before
 	public void setUp() throws Exception {
 		try {
-			fJProject1= ProjectTestSetup.getProject();
+			fJProject1= pts.getProject();
 			fSourceFolder= JavaProjectHelper.addSourceContainer(fJProject1, "src");
 			IPackageFragment pack= fSourceFolder.createPackageFragment("test", false, null);
 			fPropertiesFileISO_8859_1= write((IFolder)pack.getCorrespondingResource(), "", "Messages_ISO_8859_1.properties");
@@ -98,7 +98,7 @@
 
 	@After
 	public void tearDown() throws Exception {
-		JavaProjectHelper.clear(fJProject1, ProjectTestSetup.getDefaultClasspath());
+		JavaProjectHelper.clear(fJProject1, pts.getDefaultClasspath());
 	}
 
 	//utility methods
diff --git a/org.eclipse.jdt.text.tests/src/org/eclipse/jdt/text/tests/contentassist/AbstractCompletionTest.java b/org.eclipse.jdt.text.tests/src/org/eclipse/jdt/text/tests/contentassist/AbstractCompletionTest.java
index 589edd9..3df0fa4 100644
--- a/org.eclipse.jdt.text.tests/src/org/eclipse/jdt/text/tests/contentassist/AbstractCompletionTest.java
+++ b/org.eclipse.jdt.text.tests/src/org/eclipse/jdt/text/tests/contentassist/AbstractCompletionTest.java
@@ -79,7 +79,11 @@
 import org.eclipse.jdt.internal.ui.text.java.ContentAssistProcessor;
 import org.eclipse.jdt.internal.ui.text.java.JavaCompletionProcessor;
 
-public class AbstractCompletionTest {
+public abstract class AbstractCompletionTest {
+
+	@Rule
+	public CompletionTestSetup cts= new CompletionTestSetup();
+
 	protected static String suiteName(Class<?> fqn) {
 		String name= fqn.toString();
 		name= name.substring(name.lastIndexOf('.') + 1);
@@ -126,7 +130,7 @@
 	}
 
 	protected IPackageFragment getAnonymousTestPackage() throws CoreException {
-		return CompletionTestSetup.getAnonymousTestPackage();
+		return cts.getAnonymousTestPackage();
 	}
 
 	protected void configureCoreOptions(Hashtable<String, String> options) {
diff --git a/org.eclipse.jdt.text.tests/src/org/eclipse/jdt/text/tests/contentassist/CamelCaseCompletionTest.java b/org.eclipse.jdt.text.tests/src/org/eclipse/jdt/text/tests/contentassist/CamelCaseCompletionTest.java
index 12f6c79..d89bc68 100644
--- a/org.eclipse.jdt.text.tests/src/org/eclipse/jdt/text/tests/contentassist/CamelCaseCompletionTest.java
+++ b/org.eclipse.jdt.text.tests/src/org/eclipse/jdt/text/tests/contentassist/CamelCaseCompletionTest.java
@@ -15,7 +15,6 @@
 
 import java.util.Hashtable;
 
-import org.junit.Rule;
 import org.junit.Test;
 
 import org.eclipse.jdt.core.JavaCore;
@@ -25,9 +24,6 @@
  * @since 3.2
  */
 public class CamelCaseCompletionTest extends AbstractCompletionTest {
-	@Rule
-	public CompletionTestSetup cts= new CompletionTestSetup();
-
 	/*
 	 * @see org.eclipse.jdt.text.tests.contentassist.AbstractCompletionTest#configureCoreOptions(java.util.Hashtable)
 	 */
diff --git a/org.eclipse.jdt.text.tests/src/org/eclipse/jdt/text/tests/contentassist/CodeCompletionTest1d8.java b/org.eclipse.jdt.text.tests/src/org/eclipse/jdt/text/tests/contentassist/CodeCompletionTest1d8.java
index b572cde..6b0ad56 100644
--- a/org.eclipse.jdt.text.tests/src/org/eclipse/jdt/text/tests/contentassist/CodeCompletionTest1d8.java
+++ b/org.eclipse.jdt.text.tests/src/org/eclipse/jdt/text/tests/contentassist/CodeCompletionTest1d8.java
@@ -77,7 +77,7 @@
 
 	@Override
 	public void setUp() throws Exception {
-		fJProject1= Java1d8ProjectTestSetup.getProject();
+		fJProject1= j18s.getProject();
 
 		Hashtable<String, String> options= TestOptions.getDefaultOptions();
 		options.put(DefaultCodeFormatterConstants.FORMATTER_NUMBER_OF_EMPTY_LINES_TO_PRESERVE, "1");
@@ -108,7 +108,7 @@
 		store.setToDefault(PreferenceConstants.CODEASSIST_GUESS_METHOD_ARGUMENTS);
 		store.setToDefault(PreferenceConstants.CODEASSIST_SHOW_VISIBLE_PROPOSALS);
 		closeAllEditors();
-		JavaProjectHelper.clear(fJProject1, Java1d8ProjectTestSetup.getDefaultClasspath());
+		JavaProjectHelper.clear(fJProject1, j18s.getDefaultClasspath());
 	}
 
 	public static void closeEditor(IEditorPart editor) {
diff --git a/org.eclipse.jdt.text.tests/src/org/eclipse/jdt/text/tests/contentassist/CompletionTestSetup.java b/org.eclipse.jdt.text.tests/src/org/eclipse/jdt/text/tests/contentassist/CompletionTestSetup.java
index 588cffa..d93bdcb 100644
--- a/org.eclipse.jdt.text.tests/src/org/eclipse/jdt/text/tests/contentassist/CompletionTestSetup.java
+++ b/org.eclipse.jdt.text.tests/src/org/eclipse/jdt/text/tests/contentassist/CompletionTestSetup.java
@@ -24,7 +24,7 @@
 import org.eclipse.jdt.ui.tests.core.rules.ProjectTestSetup;
 
 class CompletionTestSetup extends ProjectTestSetup {
-	public static IPackageFragment getTestPackage() throws CoreException {
+	public IPackageFragment getTestPackage() throws CoreException {
 		IJavaProject project= getProject();
 		IPackageFragmentRoot root= project.getPackageFragmentRoot("src");
 		if (!root.exists())
@@ -38,7 +38,7 @@
 	}
 
 	private static int fAnonymousSoureFolderCounter= 0;
-	public static IPackageFragment getAnonymousTestPackage() throws CoreException {
+	public IPackageFragment getAnonymousTestPackage() throws CoreException {
 		IJavaProject project= getProject();
 		String sourceFolder= "src" + fAnonymousSoureFolderCounter++;
 		IPackageFragmentRoot root= project.getPackageFragmentRoot(sourceFolder);
diff --git a/org.eclipse.jdt.text.tests/src/org/eclipse/jdt/text/tests/contentassist/ContentAssistHistoryTest.java b/org.eclipse.jdt.text.tests/src/org/eclipse/jdt/text/tests/contentassist/ContentAssistHistoryTest.java
index f75753d..118d86c 100644
--- a/org.eclipse.jdt.text.tests/src/org/eclipse/jdt/text/tests/contentassist/ContentAssistHistoryTest.java
+++ b/org.eclipse.jdt.text.tests/src/org/eclipse/jdt/text/tests/contentassist/ContentAssistHistoryTest.java
@@ -65,7 +65,7 @@
 			protected void before() throws Throwable {
 				super.before();
 
-				IJavaProject project= ProjectTestSetup.getProject();
+				IJavaProject project= getProject();
 				fgStringT= project.findType(STRING);
 				fgCharSequenceT= project.findType(CHAR_SEQUENCE);
 				fgStringBufferT= project.findType(STRING_BUFFER);
diff --git a/org.eclipse.jdt.text.tests/src/org/eclipse/jdt/text/tests/contentassist/ContinuousTypingCompletionTest.java b/org.eclipse.jdt.text.tests/src/org/eclipse/jdt/text/tests/contentassist/ContinuousTypingCompletionTest.java
index fca4471..3266058 100644
--- a/org.eclipse.jdt.text.tests/src/org/eclipse/jdt/text/tests/contentassist/ContinuousTypingCompletionTest.java
+++ b/org.eclipse.jdt.text.tests/src/org/eclipse/jdt/text/tests/contentassist/ContinuousTypingCompletionTest.java
@@ -15,7 +15,6 @@
 
 import static org.junit.Assert.assertEquals;
 
-import org.junit.Rule;
 import org.junit.Test;
 
 import org.eclipse.jdt.testplugin.util.DisplayHelper;
@@ -64,8 +63,7 @@
 
 	private JavaEditor fEditor;
 
-	@Rule
-	public CompletionTestSetup cts= new CompletionTestSetup();
+
 
 	/*
 	 * This tests https://bugs.eclipse.org/bugs/show_bug.cgi?id=511542
@@ -78,7 +76,7 @@
 				"		/*COMPLETE_HERE*/\n" +
 				"	}\n" +
 				"}\n";
-		ICompilationUnit compilationUnit= CompletionTestSetup.getAnonymousTestPackage().createCompilationUnit(getName() + ".java", contents, true, new NullProgressMonitor());
+		ICompilationUnit compilationUnit= cts.getAnonymousTestPackage().createCompilationUnit(getName() + ".java", contents, true, new NullProgressMonitor());
 		fEditor= (JavaEditor) EditorUtility.openInEditor(compilationUnit);
 		int completionOffset= contents.indexOf("/*COMPLETE_HERE*/");
 		fEditor.getViewer().setSelectedRange(completionOffset, 0);
diff --git a/org.eclipse.jdt.text.tests/src/org/eclipse/jdt/text/tests/contentassist/Java1d7CompletionTestSetup.java b/org.eclipse.jdt.text.tests/src/org/eclipse/jdt/text/tests/contentassist/Java1d7CompletionTestSetup.java
index 3aa56fd..be0467c 100644
--- a/org.eclipse.jdt.text.tests/src/org/eclipse/jdt/text/tests/contentassist/Java1d7CompletionTestSetup.java
+++ b/org.eclipse.jdt.text.tests/src/org/eclipse/jdt/text/tests/contentassist/Java1d7CompletionTestSetup.java
@@ -27,7 +27,7 @@
  * This class is used to run tests on Java Dolphin 1.7 .
  */
 class Java1d7CompletionTestSetup extends Java1d7ProjectTestSetup {
-	public static IPackageFragment getTestPackage() throws CoreException {
+	public IPackageFragment getTestPackage() throws CoreException {
 		IJavaProject project= getProject();
 		IPackageFragmentRoot root= project.getPackageFragmentRoot("src");
 		if (!root.exists())
@@ -41,7 +41,7 @@
 	}
 
 	private static int fAnonymousSoureFolderCounter= 0;
-	public static IPackageFragment getAnonymousTestPackage() throws CoreException {
+	public IPackageFragment getAnonymousTestPackage() throws CoreException {
 		IJavaProject project= getProject();
 		String sourceFolder= "src" + fAnonymousSoureFolderCounter++;
 		IPackageFragmentRoot root= project.getPackageFragmentRoot(sourceFolder);
diff --git a/org.eclipse.jdt.text.tests/src/org/eclipse/jdt/text/tests/contentassist/JavadocCompletionTest.java b/org.eclipse.jdt.text.tests/src/org/eclipse/jdt/text/tests/contentassist/JavadocCompletionTest.java
index 017786a..a86b1ff 100644
--- a/org.eclipse.jdt.text.tests/src/org/eclipse/jdt/text/tests/contentassist/JavadocCompletionTest.java
+++ b/org.eclipse.jdt.text.tests/src/org/eclipse/jdt/text/tests/contentassist/JavadocCompletionTest.java
@@ -13,7 +13,6 @@
  *******************************************************************************/
 package org.eclipse.jdt.text.tests.contentassist;
 
-import org.junit.Rule;
 import org.junit.Test;
 
 import org.eclipse.jdt.core.JavaCore;
@@ -42,9 +41,6 @@
 	private static final String[] FIELD_INLINE_TAGS= {"@docRoot", "@link", "@linkplain", "@value", "@code", "@literal", };
 	private static final String[] HTML_TAGS= {"b", "blockquote", "br", "code", "dd", "dl", "dt", "em", "hr", "h1", "h2", "h3", "h4", "h5", "h6", "i", "li", "nl", "ol", "p", "pre", "q", "td", "th", "tr", "tt", "ul",};
 
-	@Rule
-	public CompletionTestSetup cts= new CompletionTestSetup();
-
 	/*
 	 * @see org.eclipse.jdt.text.tests.contentassist.AbstractCompletionTest#setUp()
 	 */
diff --git a/org.eclipse.jdt.text.tests/src/org/eclipse/jdt/text/tests/contentassist/MethodInsertCompletionTest.java b/org.eclipse.jdt.text.tests/src/org/eclipse/jdt/text/tests/contentassist/MethodInsertCompletionTest.java
index 95b3f2d..43bc929 100644
--- a/org.eclipse.jdt.text.tests/src/org/eclipse/jdt/text/tests/contentassist/MethodInsertCompletionTest.java
+++ b/org.eclipse.jdt.text.tests/src/org/eclipse/jdt/text/tests/contentassist/MethodInsertCompletionTest.java
@@ -14,7 +14,6 @@
  *******************************************************************************/
 package org.eclipse.jdt.text.tests.contentassist;
 
-import org.junit.Rule;
 import org.junit.Test;
 
 import org.eclipse.jdt.core.JavaCore;
@@ -26,8 +25,6 @@
  * @since 3.2
  */
 public class MethodInsertCompletionTest extends AbstractCompletionTest {
-	@Rule
-	public CompletionTestSetup cts= new CompletionTestSetup();
 
 	@Test
 	public void testThisMethod() throws Exception {
diff --git a/org.eclipse.jdt.text.tests/src/org/eclipse/jdt/text/tests/contentassist/MethodInsertionFormattedCompletionTest.java b/org.eclipse.jdt.text.tests/src/org/eclipse/jdt/text/tests/contentassist/MethodInsertionFormattedCompletionTest.java
index 31035dd..31ca4ce 100644
--- a/org.eclipse.jdt.text.tests/src/org/eclipse/jdt/text/tests/contentassist/MethodInsertionFormattedCompletionTest.java
+++ b/org.eclipse.jdt.text.tests/src/org/eclipse/jdt/text/tests/contentassist/MethodInsertionFormattedCompletionTest.java
@@ -15,7 +15,6 @@
 
 import java.util.Hashtable;
 
-import org.junit.Rule;
 import org.junit.Test;
 
 import org.eclipse.jdt.core.JavaCore;
@@ -30,9 +29,6 @@
 public class MethodInsertionFormattedCompletionTest extends AbstractCompletionTest {
 	private static final boolean BUG_DISABLED_DUE_TO_FORMATTER_CONTEXT_INFO_INTERATION= true;
 
-	@Rule
-	public CompletionTestSetup cts= new CompletionTestSetup();
-
 	/*
 	 * @see org.eclipse.jdt.text.tests.contentassist.AbstractCompletionTest#configureCoreOptions(java.util.Hashtable)
 	 */
diff --git a/org.eclipse.jdt.text.tests/src/org/eclipse/jdt/text/tests/contentassist/MethodOverwriteCompletionTest.java b/org.eclipse.jdt.text.tests/src/org/eclipse/jdt/text/tests/contentassist/MethodOverwriteCompletionTest.java
index d37077f..16f0ed8 100644
--- a/org.eclipse.jdt.text.tests/src/org/eclipse/jdt/text/tests/contentassist/MethodOverwriteCompletionTest.java
+++ b/org.eclipse.jdt.text.tests/src/org/eclipse/jdt/text/tests/contentassist/MethodOverwriteCompletionTest.java
@@ -13,7 +13,6 @@
  *******************************************************************************/
 package org.eclipse.jdt.text.tests.contentassist;
 
-import org.junit.Rule;
 import org.junit.Test;
 
 import org.eclipse.jdt.ui.PreferenceConstants;
@@ -23,8 +22,6 @@
  * @since 3.2
  */
 public class MethodOverwriteCompletionTest extends AbstractCompletionTest {
-	@Rule
-	public CompletionTestSetup cts= new CompletionTestSetup();
 
 	/*
 	 * @see org.eclipse.jdt.text.tests.contentassist.AbstractCompletionTest#setUp()
diff --git a/org.eclipse.jdt.text.tests/src/org/eclipse/jdt/text/tests/contentassist/MethodParameterGuessingCompletionTest.java b/org.eclipse.jdt.text.tests/src/org/eclipse/jdt/text/tests/contentassist/MethodParameterGuessingCompletionTest.java
index 7ccbc50..d87c2d5 100644
--- a/org.eclipse.jdt.text.tests/src/org/eclipse/jdt/text/tests/contentassist/MethodParameterGuessingCompletionTest.java
+++ b/org.eclipse.jdt.text.tests/src/org/eclipse/jdt/text/tests/contentassist/MethodParameterGuessingCompletionTest.java
@@ -13,7 +13,6 @@
  *******************************************************************************/
 package org.eclipse.jdt.text.tests.contentassist;
 
-import org.junit.Rule;
 import org.junit.Test;
 
 import org.eclipse.jdt.ui.PreferenceConstants;
@@ -23,8 +22,6 @@
  * @since 3.2
  */
 public class MethodParameterGuessingCompletionTest extends AbstractCompletionTest {
-	@Rule
-	public CompletionTestSetup cts= new CompletionTestSetup();
 
 	/*
 	 * @see org.eclipse.jdt.text.tests.contentassist.AbstractCompletionTest#setUp()
diff --git a/org.eclipse.jdt.text.tests/src/org/eclipse/jdt/text/tests/contentassist/MethodParamsCompletionTest.java b/org.eclipse.jdt.text.tests/src/org/eclipse/jdt/text/tests/contentassist/MethodParamsCompletionTest.java
index 582f4ee..36d2aa9 100644
--- a/org.eclipse.jdt.text.tests/src/org/eclipse/jdt/text/tests/contentassist/MethodParamsCompletionTest.java
+++ b/org.eclipse.jdt.text.tests/src/org/eclipse/jdt/text/tests/contentassist/MethodParamsCompletionTest.java
@@ -13,7 +13,6 @@
  *******************************************************************************/
 package org.eclipse.jdt.text.tests.contentassist;
 
-import org.junit.Rule;
 import org.junit.Test;
 
 import org.eclipse.jdt.ui.PreferenceConstants;
@@ -23,8 +22,6 @@
  * @since 3.2
  */
 public class MethodParamsCompletionTest extends AbstractCompletionTest {
-	@Rule
-	public CompletionTestSetup cts= new CompletionTestSetup();
 
 	/*
 	 * @see org.eclipse.jdt.text.tests.contentassist.AbstractCompletionTest#setUp()
diff --git a/org.eclipse.jdt.text.tests/src/org/eclipse/jdt/text/tests/contentassist/SpecialMethodsCompletionTest.java b/org.eclipse.jdt.text.tests/src/org/eclipse/jdt/text/tests/contentassist/SpecialMethodsCompletionTest.java
index 6c6117c..c7c3f31 100644
--- a/org.eclipse.jdt.text.tests/src/org/eclipse/jdt/text/tests/contentassist/SpecialMethodsCompletionTest.java
+++ b/org.eclipse.jdt.text.tests/src/org/eclipse/jdt/text/tests/contentassist/SpecialMethodsCompletionTest.java
@@ -15,7 +15,6 @@
 
 import java.util.Hashtable;
 
-import org.junit.Rule;
 import org.junit.Test;
 
 /**
@@ -23,8 +22,6 @@
  * @since 3.2
  */
 public class SpecialMethodsCompletionTest extends AbstractCompletionTest {
-	@Rule
-	public CompletionTestSetup cts= new CompletionTestSetup();
 
 	/*
 	 * @see org.eclipse.jdt.text.tests.contentassist.AbstractCompletionTest#setUp()
diff --git a/org.eclipse.jdt.text.tests/src/org/eclipse/jdt/text/tests/contentassist/TypeCompletionTest.java b/org.eclipse.jdt.text.tests/src/org/eclipse/jdt/text/tests/contentassist/TypeCompletionTest.java
index 01a941c..c9efbb6 100644
--- a/org.eclipse.jdt.text.tests/src/org/eclipse/jdt/text/tests/contentassist/TypeCompletionTest.java
+++ b/org.eclipse.jdt.text.tests/src/org/eclipse/jdt/text/tests/contentassist/TypeCompletionTest.java
@@ -13,7 +13,6 @@
  *******************************************************************************/
 package org.eclipse.jdt.text.tests.contentassist;
 
-import org.junit.Rule;
 import org.junit.Test;
 
 import org.eclipse.jdt.core.IPackageFragment;
@@ -26,8 +25,6 @@
  * @since 3.2
  */
 public class TypeCompletionTest extends AbstractCompletionTest {
-	@Rule
-	public CompletionTestSetup cts= new CompletionTestSetup();
 
 	/*
 	 * @see org.eclipse.jdt.text.tests.contentassist.AbstractCompletionTest#setUp()
@@ -293,7 +290,7 @@
 
 	@Test
 	public void testBug182468() throws Exception {
-		IPackageFragmentRoot src= (IPackageFragmentRoot)CompletionTestSetup.getTestPackage().getParent();
+		IPackageFragmentRoot src= (IPackageFragmentRoot)cts.getTestPackage().getParent();
 
 		IPackageFragment package1= src.createPackageFragment("package1", true, null);
 		package1.createCompilationUnit("AClass.java", "package " + package1.getElementName() + "; public class AClass {}", true, null);
diff --git a/org.eclipse.jdt.text.tests/src/org/eclipse/jdt/text/tests/contentassist/TypeCompletionTest1d7.java b/org.eclipse.jdt.text.tests/src/org/eclipse/jdt/text/tests/contentassist/TypeCompletionTest1d7.java
index 95d27ec..416906a 100644
--- a/org.eclipse.jdt.text.tests/src/org/eclipse/jdt/text/tests/contentassist/TypeCompletionTest1d7.java
+++ b/org.eclipse.jdt.text.tests/src/org/eclipse/jdt/text/tests/contentassist/TypeCompletionTest1d7.java
@@ -44,7 +44,7 @@
 
 	@Override
 	protected IPackageFragment getAnonymousTestPackage() throws CoreException {
-		return Java1d7CompletionTestSetup.getAnonymousTestPackage();
+		return cts.getAnonymousTestPackage();
 	}
 
 	@Override
@@ -86,7 +86,7 @@
 	@Override
 	@Test
 	public void testBug182468() throws Exception {
-		IPackageFragmentRoot src= (IPackageFragmentRoot)Java1d7CompletionTestSetup.getTestPackage().getParent();
+		IPackageFragmentRoot src= (IPackageFragmentRoot)cts.getTestPackage().getParent();
 
 		IPackageFragment package1= src.createPackageFragment("package1", true, null);
 		package1.createCompilationUnit("AClass.java", "package " + package1.getElementName() + "; public class AClass {}", true, null);
diff --git a/org.eclipse.jdt.ui.tests.refactoring/test cases/org/eclipse/jdt/ui/tests/refactoring/ChangeSignatureTests1d8.java b/org.eclipse.jdt.ui.tests.refactoring/test cases/org/eclipse/jdt/ui/tests/refactoring/ChangeSignatureTests1d8.java
index 0665c58..7d9daab 100644
--- a/org.eclipse.jdt.ui.tests.refactoring/test cases/org/eclipse/jdt/ui/tests/refactoring/ChangeSignatureTests1d8.java
+++ b/org.eclipse.jdt.ui.tests.refactoring/test cases/org/eclipse/jdt/ui/tests/refactoring/ChangeSignatureTests1d8.java
@@ -48,12 +48,12 @@
 
 	@Override
 	public void genericafter() throws Exception {
-		JavaProjectHelper.clear(fJProject1, Java1d8ProjectTestSetup.getDefaultClasspath());
+		JavaProjectHelper.clear(fJProject1, jps.getDefaultClasspath());
 	}
 
 	@Override
 	public void genericbefore() throws Exception {
-		fJProject1= Java1d8ProjectTestSetup.getProject();
+		fJProject1= jps.getProject();
 		fRoot= JavaProjectHelper.addSourceContainer(fJProject1, "src");
 		fPackageP= fRoot.createPackageFragment("p", true, null);
 		fIsPreDeltaTest= false;
diff --git a/org.eclipse.jdt.ui.tests.refactoring/test cases/org/eclipse/jdt/ui/tests/refactoring/nls/NLSHintHelperTest.java b/org.eclipse.jdt.ui.tests.refactoring/test cases/org/eclipse/jdt/ui/tests/refactoring/nls/NLSHintHelperTest.java
index 9181878..14692de 100644
--- a/org.eclipse.jdt.ui.tests.refactoring/test cases/org/eclipse/jdt/ui/tests/refactoring/nls/NLSHintHelperTest.java
+++ b/org.eclipse.jdt.ui.tests.refactoring/test cases/org/eclipse/jdt/ui/tests/refactoring/nls/NLSHintHelperTest.java
@@ -79,7 +79,7 @@
 
 	@Before
 	public void setUp() throws Exception {
-		fJProject= ProjectTestSetup.getProject();
+		fJProject= pts.getProject();
 		File lib= JavaTestPlugin.getDefault().getFileInPlugin(JavaProjectHelper.NLS_LIB);
 		assertNotNull("lib does not exist", lib);
 		assertTrue("lib does not exist", lib.exists());
@@ -448,6 +448,6 @@
 
 	@After
 	public void tearDown() throws Exception {
-		JavaProjectHelper.clear(fJProject, ProjectTestSetup.getDefaultClasspath());
+		JavaProjectHelper.clear(fJProject, pts.getDefaultClasspath());
 	}
 }
diff --git a/org.eclipse.jdt.ui.tests.refactoring/test cases/org/eclipse/jdt/ui/tests/refactoring/nls/NLSHintTest.java b/org.eclipse.jdt.ui.tests.refactoring/test cases/org/eclipse/jdt/ui/tests/refactoring/nls/NLSHintTest.java
index e15361b..8e39eec 100644
--- a/org.eclipse.jdt.ui.tests.refactoring/test cases/org/eclipse/jdt/ui/tests/refactoring/nls/NLSHintTest.java
+++ b/org.eclipse.jdt.ui.tests.refactoring/test cases/org/eclipse/jdt/ui/tests/refactoring/nls/NLSHintTest.java
@@ -65,13 +65,13 @@
 
     @Before
 	public void setUp() throws Exception {
-        javaProject = ProjectTestSetup.getProject();
+        javaProject = pts.getProject();
         fSourceFolder = JavaProjectHelper.addSourceContainer(javaProject, "src");
     }
 
     @After
 	public void tearDown() throws Exception {
-        JavaProjectHelper.clear(javaProject, ProjectTestSetup.getDefaultClasspath());
+        JavaProjectHelper.clear(javaProject, pts.getDefaultClasspath());
     }
 
     /*
diff --git a/org.eclipse.jdt.ui.tests.refactoring/test cases/org/eclipse/jdt/ui/tests/refactoring/nls/NLSHolderTest.java b/org.eclipse.jdt.ui.tests.refactoring/test cases/org/eclipse/jdt/ui/tests/refactoring/nls/NLSHolderTest.java
index 325f694..84067a8 100644
--- a/org.eclipse.jdt.ui.tests.refactoring/test cases/org/eclipse/jdt/ui/tests/refactoring/nls/NLSHolderTest.java
+++ b/org.eclipse.jdt.ui.tests.refactoring/test cases/org/eclipse/jdt/ui/tests/refactoring/nls/NLSHolderTest.java
@@ -46,13 +46,13 @@
 
 	@Before
 	public void setUp() throws Exception {
-		javaProject= ProjectTestSetup.getProject();
+		javaProject= pts.getProject();
 		fSourceFolder= JavaProjectHelper.addSourceContainer(javaProject, "src");
 	}
 
 	@After
 	public void tearDown() throws Exception {
-		JavaProjectHelper.clear(javaProject, ProjectTestSetup.getDefaultClasspath());
+		JavaProjectHelper.clear(javaProject, pts.getDefaultClasspath());
 	}
 
 	@Test
diff --git a/org.eclipse.jdt.ui.tests.refactoring/test cases/org/eclipse/jdt/ui/tests/refactoring/nls/NLSSourceModifierTest.java b/org.eclipse.jdt.ui.tests.refactoring/test cases/org/eclipse/jdt/ui/tests/refactoring/nls/NLSSourceModifierTest.java
index 9d75415..c5e5e81 100644
--- a/org.eclipse.jdt.ui.tests.refactoring/test cases/org/eclipse/jdt/ui/tests/refactoring/nls/NLSSourceModifierTest.java
+++ b/org.eclipse.jdt.ui.tests.refactoring/test cases/org/eclipse/jdt/ui/tests/refactoring/nls/NLSSourceModifierTest.java
@@ -84,13 +84,13 @@
 
 		StubUtility.setCodeTemplate(CodeTemplateContextType.METHODSTUB_ID, "//TODO\n${body_statement}", null);
 
-        javaProject = ProjectTestSetup.getProject();
+        javaProject = pts.getProject();
         fSourceFolder = JavaProjectHelper.addSourceContainer(javaProject, "src");
     }
 
     @After
 	public void tearDown() throws Exception {
-        JavaProjectHelper.clear(javaProject, ProjectTestSetup.getDefaultClasspath());
+        JavaProjectHelper.clear(javaProject, pts.getDefaultClasspath());
     }
 
 	@Test
diff --git a/org.eclipse.jdt.ui.tests.refactoring/test cases/org/eclipse/jdt/ui/tests/refactoring/nls/NlsRefactoringCheckFinalConditionsTest.java b/org.eclipse.jdt.ui.tests.refactoring/test cases/org/eclipse/jdt/ui/tests/refactoring/nls/NlsRefactoringCheckFinalConditionsTest.java
index aedd8ef..a995071 100644
--- a/org.eclipse.jdt.ui.tests.refactoring/test cases/org/eclipse/jdt/ui/tests/refactoring/nls/NlsRefactoringCheckFinalConditionsTest.java
+++ b/org.eclipse.jdt.ui.tests.refactoring/test cases/org/eclipse/jdt/ui/tests/refactoring/nls/NlsRefactoringCheckFinalConditionsTest.java
@@ -60,13 +60,13 @@
 
 	@Before
 	public void setUp() throws Exception {
-		javaProject= ProjectTestSetup.getProject();
+		javaProject= pts.getProject();
 		fHelper= new NlsRefactoringTestHelper(javaProject);
 	}
 
 	@After
 	public void tearDown() throws Exception {
-		JavaProjectHelper.clear(javaProject, ProjectTestSetup.getDefaultClasspath());
+		JavaProjectHelper.clear(javaProject, pts.getDefaultClasspath());
 	}
 
 	@Test
diff --git a/org.eclipse.jdt.ui.tests.refactoring/test cases/org/eclipse/jdt/ui/tests/refactoring/nls/NlsRefactoringCheckInitialConditionsTest.java b/org.eclipse.jdt.ui.tests.refactoring/test cases/org/eclipse/jdt/ui/tests/refactoring/nls/NlsRefactoringCheckInitialConditionsTest.java
index abcad95..c7df738 100644
--- a/org.eclipse.jdt.ui.tests.refactoring/test cases/org/eclipse/jdt/ui/tests/refactoring/nls/NlsRefactoringCheckInitialConditionsTest.java
+++ b/org.eclipse.jdt.ui.tests.refactoring/test cases/org/eclipse/jdt/ui/tests/refactoring/nls/NlsRefactoringCheckInitialConditionsTest.java
@@ -42,13 +42,13 @@
 
 	@Before
 	public void setUp() throws Exception {
-		javaProject= ProjectTestSetup.getProject();
+		javaProject= pts.getProject();
 		fHelper= new NlsRefactoringTestHelper(javaProject);
 	}
 
 	@After
 	public void tearDown() throws Exception {
-		JavaProjectHelper.clear(javaProject, ProjectTestSetup.getDefaultClasspath());
+		JavaProjectHelper.clear(javaProject, pts.getDefaultClasspath());
 	}
 
 	protected String getRefactoringPath() {
diff --git a/org.eclipse.jdt.ui.tests.refactoring/test cases/org/eclipse/jdt/ui/tests/refactoring/nls/NlsRefactoringCreateChangeTest.java b/org.eclipse.jdt.ui.tests.refactoring/test cases/org/eclipse/jdt/ui/tests/refactoring/nls/NlsRefactoringCreateChangeTest.java
index 2b48860..f4c8fb6 100644
--- a/org.eclipse.jdt.ui.tests.refactoring/test cases/org/eclipse/jdt/ui/tests/refactoring/nls/NlsRefactoringCreateChangeTest.java
+++ b/org.eclipse.jdt.ui.tests.refactoring/test cases/org/eclipse/jdt/ui/tests/refactoring/nls/NlsRefactoringCreateChangeTest.java
@@ -57,14 +57,14 @@
 
 	@Before
 	public void setUp() throws Exception {
-		fJavaProject= ProjectTestSetup.getProject();
+		fJavaProject= pts.getProject();
 		fSourceFolder= JavaProjectHelper.addSourceContainer(fJavaProject, "src");
 		fHelper= new NlsRefactoringTestHelper(fJavaProject);
 	}
 
 	@After
 	public void tearDown() throws Exception {
-		JavaProjectHelper.clear(fJavaProject, ProjectTestSetup.getDefaultClasspath());
+		JavaProjectHelper.clear(fJavaProject, pts.getDefaultClasspath());
 	}
 
 	@Test
diff --git a/org.eclipse.jdt.ui.tests/leaks/org/eclipse/jdt/ui/leaktest/example/LeakTestExample.java b/org.eclipse.jdt.ui.tests/leaks/org/eclipse/jdt/ui/leaktest/example/LeakTestExample.java
index cea475d..70af7ae 100644
--- a/org.eclipse.jdt.ui.tests/leaks/org/eclipse/jdt/ui/leaktest/example/LeakTestExample.java
+++ b/org.eclipse.jdt.ui.tests/leaks/org/eclipse/jdt/ui/leaktest/example/LeakTestExample.java
@@ -27,7 +27,7 @@
 public class LeakTestExample extends LeakTestCase {
 
 	@Rule
-	public LeakTestSetup projectsetup = new LeakTestSetup();
+	public LeakTestSetup projectSetup = new LeakTestSetup();
 
 	private static class MyClass {
 	}
diff --git a/org.eclipse.jdt.ui.tests/leaks/org/eclipse/jdt/ui/tests/leaks/JavaLeakTest.java b/org.eclipse.jdt.ui.tests/leaks/org/eclipse/jdt/ui/tests/leaks/JavaLeakTest.java
index c4792d8..b469a77 100644
--- a/org.eclipse.jdt.ui.tests/leaks/org/eclipse/jdt/ui/tests/leaks/JavaLeakTest.java
+++ b/org.eclipse.jdt.ui.tests/leaks/org/eclipse/jdt/ui/tests/leaks/JavaLeakTest.java
@@ -83,7 +83,7 @@
 public class JavaLeakTest extends LeakTestCase {
 
 	@Rule
-	public LeakTestSetup projectsetup = new LeakTestSetup();
+	public LeakTestSetup projectSetup = new LeakTestSetup();
 
 	private IJavaProject fJProject;
 
diff --git a/org.eclipse.jdt.ui.tests/leaks/org/eclipse/jdt/ui/tests/leaks/TextViewerUndoManagerLeakTest.java b/org.eclipse.jdt.ui.tests/leaks/org/eclipse/jdt/ui/tests/leaks/TextViewerUndoManagerLeakTest.java
index e7ce9a0..48c2444 100644
--- a/org.eclipse.jdt.ui.tests/leaks/org/eclipse/jdt/ui/tests/leaks/TextViewerUndoManagerLeakTest.java
+++ b/org.eclipse.jdt.ui.tests/leaks/org/eclipse/jdt/ui/tests/leaks/TextViewerUndoManagerLeakTest.java
@@ -49,7 +49,7 @@
 public class TextViewerUndoManagerLeakTest extends LeakTestCase {
 
 	@Rule
-	public LeakTestSetup projectsetup = new LeakTestSetup();
+	public LeakTestSetup projectSetup = new LeakTestSetup();
 
 	/** The maximum undo level. */
 	private static final int MAX_UNDO_LEVEL= 256;
diff --git a/org.eclipse.jdt.ui.tests/leaks/org/eclipse/jdt/ui/tests/leaks/UndoManagerLeakTest.java b/org.eclipse.jdt.ui.tests/leaks/org/eclipse/jdt/ui/tests/leaks/UndoManagerLeakTest.java
index 2c33c97..308cb72 100644
--- a/org.eclipse.jdt.ui.tests/leaks/org/eclipse/jdt/ui/tests/leaks/UndoManagerLeakTest.java
+++ b/org.eclipse.jdt.ui.tests/leaks/org/eclipse/jdt/ui/tests/leaks/UndoManagerLeakTest.java
@@ -47,7 +47,7 @@
 public class UndoManagerLeakTest extends LeakTestCase {
 
 	@Rule
-	public LeakTestSetup projectsetup = new LeakTestSetup();
+	public LeakTestSetup projectSetup = new LeakTestSetup();
 
 	/** The maximum undo level. */
 	private static final int MAX_UNDO_LEVEL= 256;
diff --git a/org.eclipse.jdt.ui.tests/ui/org/eclipse/jdt/ui/tests/core/ASTNodesInsertTest.java b/org.eclipse.jdt.ui.tests/ui/org/eclipse/jdt/ui/tests/core/ASTNodesInsertTest.java
index 67a5590..62385c2 100644
--- a/org.eclipse.jdt.ui.tests/ui/org/eclipse/jdt/ui/tests/core/ASTNodesInsertTest.java
+++ b/org.eclipse.jdt.ui.tests/ui/org/eclipse/jdt/ui/tests/core/ASTNodesInsertTest.java
@@ -60,7 +60,7 @@
 	@Before
 	public void setUp() throws Exception {
 
-		fJProject1= ProjectTestSetup.getProject();
+		fJProject1= pts.getProject();
 		fSourceFolder= JavaProjectHelper.addSourceContainer(fJProject1, "src");
 
 		Hashtable<String, String> options= TestOptions.getDefaultOptions();
@@ -69,7 +69,7 @@
 
 	@After
 	public void tearDown() throws Exception {
-		JavaProjectHelper.clear(fJProject1, ProjectTestSetup.getDefaultClasspath());
+		JavaProjectHelper.clear(fJProject1, pts.getDefaultClasspath());
 	}
 
 	@Test
diff --git a/org.eclipse.jdt.ui.tests/ui/org/eclipse/jdt/ui/tests/core/ASTProviderTest.java b/org.eclipse.jdt.ui.tests/ui/org/eclipse/jdt/ui/tests/core/ASTProviderTest.java
index 6c3ca82..0bdbdf4 100644
--- a/org.eclipse.jdt.ui.tests/ui/org/eclipse/jdt/ui/tests/core/ASTProviderTest.java
+++ b/org.eclipse.jdt.ui.tests/ui/org/eclipse/jdt/ui/tests/core/ASTProviderTest.java
@@ -105,14 +105,14 @@
 
 	@Before
 	public void setUp() throws Exception {
-		fJProject1= ProjectTestSetup.getProject();
+		fJProject1= pts.getProject();
 		fSourceFolder= JavaProjectHelper.addSourceContainer(fJProject1, "src");
 	}
 
 
 	@After
 	public void tearDown() throws Exception {
-		JavaProjectHelper.clear(fJProject1, ProjectTestSetup.getDefaultClasspath());
+		JavaProjectHelper.clear(fJProject1, pts.getDefaultClasspath());
 	}
 
 	@Test
diff --git a/org.eclipse.jdt.ui.tests/ui/org/eclipse/jdt/ui/tests/core/AbstractBindingLabelsTest.java b/org.eclipse.jdt.ui.tests/ui/org/eclipse/jdt/ui/tests/core/AbstractBindingLabelsTest.java
index bbb4fd7..3ac5340 100644
--- a/org.eclipse.jdt.ui.tests/ui/org/eclipse/jdt/ui/tests/core/AbstractBindingLabelsTest.java
+++ b/org.eclipse.jdt.ui.tests/ui/org/eclipse/jdt/ui/tests/core/AbstractBindingLabelsTest.java
@@ -22,41 +22,18 @@
 import java.util.regex.Matcher;
 import java.util.regex.Pattern;
 
-import org.junit.After;
-import org.junit.Before;
-
-import org.eclipse.jdt.testplugin.JavaProjectHelper;
-
-import org.eclipse.jface.preference.IPreferenceStore;
-
 import org.eclipse.jdt.core.IJavaElement;
 import org.eclipse.jdt.core.IJavaProject;
 import org.eclipse.jdt.core.dom.AST;
 import org.eclipse.jdt.core.dom.ASTParser;
 import org.eclipse.jdt.core.dom.IBinding;
 
-import org.eclipse.jdt.ui.PreferenceConstants;
-import org.eclipse.jdt.ui.tests.core.rules.ProjectTestSetup;
-
 import org.eclipse.jdt.internal.ui.viewsupport.JavaElementLinks;
 
 public abstract class AbstractBindingLabelsTest extends CoreTests {
 	protected IJavaProject fJProject1;
 	protected boolean fHaveSource= true;
 
-	@Before
-	public void setUp() throws Exception {
-		fJProject1= ProjectTestSetup.getProject();
-
-		IPreferenceStore store= PreferenceConstants.getPreferenceStore();
-		store.setValue(PreferenceConstants.APPEARANCE_COMPRESS_PACKAGE_NAMES, false);
-	}
-
-	@After
-	public void tearDown() throws Exception {
-		JavaProjectHelper.clear(fJProject1, ProjectTestSetup.getDefaultClasspath());
-	}
-
 	protected String getBindingLabel(IJavaElement elem, long flags) {
 		ASTParser parser= ASTParser.newParser(AST.JLS14);
 		parser.setResolveBindings(true);
diff --git a/org.eclipse.jdt.ui.tests/ui/org/eclipse/jdt/ui/tests/core/AddImportTest.java b/org.eclipse.jdt.ui.tests/ui/org/eclipse/jdt/ui/tests/core/AddImportTest.java
index 0407237..d62e77e 100644
--- a/org.eclipse.jdt.ui.tests/ui/org/eclipse/jdt/ui/tests/core/AddImportTest.java
+++ b/org.eclipse.jdt.ui.tests/ui/org/eclipse/jdt/ui/tests/core/AddImportTest.java
@@ -68,7 +68,7 @@
 
 	@Before
 	public void setUp() throws Exception {
-		fJProject1= ProjectTestSetup.getProject();
+		fJProject1= pts.getProject();
 		JavaProjectHelper.set15CompilerOptions(fJProject1);
 
 		Hashtable<String, String> options= TestOptions.getDefaultOptions();
@@ -78,7 +78,7 @@
 
 	@After
 	public void tearDown() throws Exception {
-		JavaProjectHelper.clear(fJProject1, ProjectTestSetup.getDefaultClasspath());
+		JavaProjectHelper.clear(fJProject1, pts.getDefaultClasspath());
 	}
 
 	@Test
diff --git a/org.eclipse.jdt.ui.tests/ui/org/eclipse/jdt/ui/tests/core/BindingLabels18Test.java b/org.eclipse.jdt.ui.tests/ui/org/eclipse/jdt/ui/tests/core/BindingLabels18Test.java
index 62c3b16..226c6cb 100644
--- a/org.eclipse.jdt.ui.tests/ui/org/eclipse/jdt/ui/tests/core/BindingLabels18Test.java
+++ b/org.eclipse.jdt.ui.tests/ui/org/eclipse/jdt/ui/tests/core/BindingLabels18Test.java
@@ -57,18 +57,16 @@
 	@Rule
 	public Java1d8ProjectTestSetup j18p= new Java1d8ProjectTestSetup();
 
-	@Override
 	@Before
 	public void setUp() throws Exception {
-		fJProject1= Java1d8ProjectTestSetup.getProject();
+		fJProject1= j18p.getProject();
 		IPreferenceStore store= PreferenceConstants.getPreferenceStore();
 		store.setValue(PreferenceConstants.APPEARANCE_COMPRESS_PACKAGE_NAMES, false);
 	}
 
-	@Override
 	@After
 	public void tearDown() throws Exception {
-		JavaProjectHelper.clear(fJProject1, Java1d8ProjectTestSetup.getDefaultClasspath());
+		JavaProjectHelper.clear(fJProject1, j18p.getDefaultClasspath());
 	}
 
 	@Test
diff --git a/org.eclipse.jdt.ui.tests/ui/org/eclipse/jdt/ui/tests/core/BindingLabels9Test.java b/org.eclipse.jdt.ui.tests/ui/org/eclipse/jdt/ui/tests/core/BindingLabels9Test.java
index 38910cb..1e2dc60 100644
--- a/org.eclipse.jdt.ui.tests/ui/org/eclipse/jdt/ui/tests/core/BindingLabels9Test.java
+++ b/org.eclipse.jdt.ui.tests/ui/org/eclipse/jdt/ui/tests/core/BindingLabels9Test.java
@@ -13,7 +13,6 @@
 import static org.junit.Assert.assertEquals;
 
 import org.junit.After;
-import org.junit.Before;
 import org.junit.Rule;
 import org.junit.Test;
 
@@ -36,19 +35,16 @@
 	@Rule
 	public Java9ProjectTestSetup j9p= new Java9ProjectTestSetup();
 
-	@Override
-	@Before
 	public void setUp() throws Exception {
-		fJProject1= Java9ProjectTestSetup.getProject();
+		fJProject1= j9p.getProject();
 
 		IPreferenceStore store= PreferenceConstants.getPreferenceStore();
 		store.setValue(PreferenceConstants.APPEARANCE_COMPRESS_PACKAGE_NAMES, false);
 	}
 
-	@Override
 	@After
 	public void tearDown() throws Exception {
-		JavaProjectHelper.clear(fJProject1, Java9ProjectTestSetup.getDefaultClasspath());
+		JavaProjectHelper.clear(fJProject1, j9p.getDefaultClasspath());
 	}
 
 	@Test
diff --git a/org.eclipse.jdt.ui.tests/ui/org/eclipse/jdt/ui/tests/core/BindingLabelsTest.java b/org.eclipse.jdt.ui.tests/ui/org/eclipse/jdt/ui/tests/core/BindingLabelsTest.java
index 65bb629..8919980 100644
--- a/org.eclipse.jdt.ui.tests/ui/org/eclipse/jdt/ui/tests/core/BindingLabelsTest.java
+++ b/org.eclipse.jdt.ui.tests/ui/org/eclipse/jdt/ui/tests/core/BindingLabelsTest.java
@@ -13,6 +13,8 @@
  *******************************************************************************/
 package org.eclipse.jdt.ui.tests.core;
 
+import org.junit.After;
+import org.junit.Before;
 import org.junit.Rule;
 import org.junit.Test;
 
@@ -20,6 +22,8 @@
 
 import org.eclipse.core.runtime.CoreException;
 
+import org.eclipse.jface.preference.IPreferenceStore;
+
 import org.eclipse.jdt.core.ICompilationUnit;
 import org.eclipse.jdt.core.IJavaElement;
 import org.eclipse.jdt.core.IMethod;
@@ -34,6 +38,7 @@
 import org.eclipse.jdt.core.dom.ITypeBinding;
 
 import org.eclipse.jdt.ui.JavaElementLabels;
+import org.eclipse.jdt.ui.PreferenceConstants;
 import org.eclipse.jdt.ui.tests.core.rules.ProjectTestSetup;
 
 import org.eclipse.jdt.internal.ui.viewsupport.JavaElementLinks;
@@ -46,6 +51,19 @@
 	@Rule
 	public ProjectTestSetup pts= new ProjectTestSetup();
 
+	@Before
+	public void setUp() throws Exception {
+		fJProject1= pts.getProject();
+
+		IPreferenceStore store= PreferenceConstants.getPreferenceStore();
+		store.setValue(PreferenceConstants.APPEARANCE_COMPRESS_PACKAGE_NAMES, false);
+	}
+
+	@After
+	public void tearDown() throws Exception {
+		JavaProjectHelper.clear(fJProject1, pts.getDefaultClasspath());
+	}
+
 	@Test
 	public void testTypeLabelOuter() throws Exception {
 
diff --git a/org.eclipse.jdt.ui.tests/ui/org/eclipse/jdt/ui/tests/core/CodeFormatterTest.java b/org.eclipse.jdt.ui.tests/ui/org/eclipse/jdt/ui/tests/core/CodeFormatterTest.java
index ab2325b..addb842 100644
--- a/org.eclipse.jdt.ui.tests/ui/org/eclipse/jdt/ui/tests/core/CodeFormatterTest.java
+++ b/org.eclipse.jdt.ui.tests/ui/org/eclipse/jdt/ui/tests/core/CodeFormatterTest.java
@@ -67,7 +67,7 @@
 	@Before
 	public void setUp() throws Exception {
 		fJProject1= JavaProjectHelper.createJavaProject("TestProject1", "bin");
-		JavaProjectHelper.addRequiredProject(fJProject1, ProjectTestSetup.getProject());
+		JavaProjectHelper.addRequiredProject(fJProject1, pts.getProject());
 
 		fSourceFolder= JavaProjectHelper.addSourceContainer(fJProject1, "src");
 
diff --git a/org.eclipse.jdt.ui.tests/ui/org/eclipse/jdt/ui/tests/core/CodeFormatterTest9.java b/org.eclipse.jdt.ui.tests/ui/org/eclipse/jdt/ui/tests/core/CodeFormatterTest9.java
index d95f5e8..ed0b78e 100644
--- a/org.eclipse.jdt.ui.tests/ui/org/eclipse/jdt/ui/tests/core/CodeFormatterTest9.java
+++ b/org.eclipse.jdt.ui.tests/ui/org/eclipse/jdt/ui/tests/core/CodeFormatterTest9.java
@@ -40,7 +40,7 @@
 	@Before
 	public void setUp() throws Exception {
 		fJProject1= JavaProjectHelper.createJavaProject("TestProject1", "bin");
-		JavaProjectHelper.addRequiredProject(fJProject1, Java9ProjectTestSetup.getProject());
+		JavaProjectHelper.addRequiredProject(fJProject1, j9p.getProject());
 
 		fSourceFolder= JavaProjectHelper.addSourceContainer(fJProject1, "src");
 
diff --git a/org.eclipse.jdt.ui.tests/ui/org/eclipse/jdt/ui/tests/core/CodeFormatterUtilTest.java b/org.eclipse.jdt.ui.tests/ui/org/eclipse/jdt/ui/tests/core/CodeFormatterUtilTest.java
index 0cc7394..00852a9 100644
--- a/org.eclipse.jdt.ui.tests/ui/org/eclipse/jdt/ui/tests/core/CodeFormatterUtilTest.java
+++ b/org.eclipse.jdt.ui.tests/ui/org/eclipse/jdt/ui/tests/core/CodeFormatterUtilTest.java
@@ -63,7 +63,7 @@
 	@Before
 	public void setUp() throws Exception {
 		fJProject1= JavaProjectHelper.createJavaProject("TestProject1", "bin");
-		JavaProjectHelper.addRequiredProject(fJProject1, ProjectTestSetup.getProject());
+		JavaProjectHelper.addRequiredProject(fJProject1, pts.getProject());
 
 		Hashtable<String, String> options= TestOptions.getDefaultOptions();
 		options.put(DefaultCodeFormatterConstants.FORMATTER_TAB_CHAR, JavaCore.SPACE);
diff --git a/org.eclipse.jdt.ui.tests/ui/org/eclipse/jdt/ui/tests/core/ImportOrganizeTest.java b/org.eclipse.jdt.ui.tests/ui/org/eclipse/jdt/ui/tests/core/ImportOrganizeTest.java
index 83f831b..887d99f 100644
--- a/org.eclipse.jdt.ui.tests/ui/org/eclipse/jdt/ui/tests/core/ImportOrganizeTest.java
+++ b/org.eclipse.jdt.ui.tests/ui/org/eclipse/jdt/ui/tests/core/ImportOrganizeTest.java
@@ -63,7 +63,7 @@
 
 	@Before
 	public void setUp() throws Exception {
-		fJProject1= ProjectTestSetup.getProject();
+		fJProject1= pts.getProject();
 
 		Hashtable<String, String> options= TestOptions.getDefaultOptions();
 		options.put(DefaultCodeFormatterConstants.FORMATTER_NUMBER_OF_EMPTY_LINES_TO_PRESERVE, String.valueOf(99));
@@ -73,7 +73,7 @@
 	@After
 	public void tearDown() throws Exception {
 		setOrganizeImportSettings(null, 99, 99, fJProject1);
-		JavaProjectHelper.clear(fJProject1, ProjectTestSetup.getDefaultClasspath());
+		JavaProjectHelper.clear(fJProject1, pts.getDefaultClasspath());
 	}
 
 	protected IChooseImportQuery createQuery(final String name, final String[] choices, final int[] nEntries) {
diff --git a/org.eclipse.jdt.ui.tests/ui/org/eclipse/jdt/ui/tests/core/ImportOrganizeTest1d8.java b/org.eclipse.jdt.ui.tests/ui/org/eclipse/jdt/ui/tests/core/ImportOrganizeTest1d8.java
index 4886ec2..5e2dd30 100644
--- a/org.eclipse.jdt.ui.tests/ui/org/eclipse/jdt/ui/tests/core/ImportOrganizeTest1d8.java
+++ b/org.eclipse.jdt.ui.tests/ui/org/eclipse/jdt/ui/tests/core/ImportOrganizeTest1d8.java
@@ -45,7 +45,7 @@
 
 	@Before
 	public void before() throws Exception {
-		fJProject1= Java1d8ProjectTestSetup.getProject();
+		fJProject1= j18p.getProject();
 
 		Hashtable<String, String> options= TestOptions.getDefaultOptions();
 		options.put(DefaultCodeFormatterConstants.FORMATTER_NUMBER_OF_EMPTY_LINES_TO_PRESERVE, String.valueOf(99));
@@ -56,7 +56,7 @@
 	@After
 	public void after() throws Exception {
 		setOrganizeImportSettings(null, 99, 99, fJProject1);
-		JavaProjectHelper.clear(fJProject1, Java1d8ProjectTestSetup.getDefaultClasspath());
+		JavaProjectHelper.clear(fJProject1, j18p.getDefaultClasspath());
 	}
 
 	@Test
diff --git a/org.eclipse.jdt.ui.tests/ui/org/eclipse/jdt/ui/tests/core/JDTFlagsTest18.java b/org.eclipse.jdt.ui.tests/ui/org/eclipse/jdt/ui/tests/core/JDTFlagsTest18.java
index 00d001f..10eced4 100644
--- a/org.eclipse.jdt.ui.tests/ui/org/eclipse/jdt/ui/tests/core/JDTFlagsTest18.java
+++ b/org.eclipse.jdt.ui.tests/ui/org/eclipse/jdt/ui/tests/core/JDTFlagsTest18.java
@@ -13,6 +13,7 @@
  *******************************************************************************/
 package org.eclipse.jdt.ui.tests.core;
 
+import static org.junit.Assert.assertFalse;
 import static org.junit.Assert.assertNotNull;
 import static org.junit.Assert.assertTrue;
 
@@ -20,7 +21,6 @@
 import java.util.Hashtable;
 
 import org.junit.After;
-import org.junit.Assert;
 import org.junit.Before;
 import org.junit.Rule;
 import org.junit.Test;
@@ -73,13 +73,13 @@
 
 	@Before
 	public void setUp() throws Exception {
-		fJProject1= Java1d8ProjectTestSetup.getProject();
+		fJProject1= j18p.getProject();
 		fSourceFolder= JavaProjectHelper.addSourceContainer(fJProject1, "src");
 	}
 
 	@After
 	public void tearDown() throws Exception {
-		JavaProjectHelper.clear(fJProject1, Java1d8ProjectTestSetup.getDefaultClasspath());
+		JavaProjectHelper.clear(fJProject1, j18p.getDefaultClasspath());
 	}
 
 	protected CompilationUnit getCompilationUnitNode(String source) {
@@ -104,23 +104,23 @@
 		ICompilationUnit cUnit= pack1.createCompilationUnit("Snippet.java", buf.toString(), false, null);
 		int offset= cUnit.getSource().indexOf("public static");
 		IMethod method= (IMethod)cUnit.getElementAt(offset);
-		Assert.assertTrue(JdtFlags.isStatic(method));
-		Assert.assertFalse(JdtFlags.isAbstract(method));
-		Assert.assertFalse(JdtFlags.isDefaultMethod(method));
+		assertTrue(JdtFlags.isStatic(method));
+		assertFalse(JdtFlags.isAbstract(method));
+		assertFalse(JdtFlags.isDefaultMethod(method));
 
 		ASTParser p= ASTParser.newParser(IASTSharedValues.SHARED_AST_LEVEL);
 		p.setProject(fJProject1);
 		p.setBindingsRecovery(true);
 		try {
 			IMethodBinding binding= (IMethodBinding)p.createBindings(new IJavaElement[] { method }, null)[0];
-			Assert.assertTrue(JdtFlags.isStatic(binding));
-			Assert.assertFalse(JdtFlags.isAbstract(binding));
-			Assert.assertFalse(JdtFlags.isDefaultMethod(binding));
+			assertTrue(JdtFlags.isStatic(binding));
+			assertFalse(JdtFlags.isAbstract(binding));
+			assertFalse(JdtFlags.isDefaultMethod(binding));
 		} catch (OperationCanceledException e) {
 		}
 
 		MethodDeclaration methodNode= ASTNodeSearchUtil.getMethodDeclarationNode(method, getCompilationUnitNode(buf.toString()));
-		Assert.assertTrue(JdtFlags.isStatic(methodNode));
+		assertTrue(JdtFlags.isStatic(methodNode));
 	}
 
 	@Test
@@ -138,8 +138,8 @@
 		int offset= cUnit.getSource().indexOf("enum E");
 		IJavaElement elem= cUnit.getElementAt(offset);
 		EnumDeclaration enumNode= ASTNodeSearchUtil.getEnumDeclarationNode((IType)elem, getCompilationUnitNode(buf.toString()));
-		Assert.assertTrue(JdtFlags.isStatic(enumNode));
-		Assert.assertTrue(JdtFlags.isStatic((IType)elem));
+		assertTrue(JdtFlags.isStatic(enumNode));
+		assertTrue(JdtFlags.isStatic((IType)elem));
 	}
 
 	@Test
@@ -171,17 +171,17 @@
 		int offset= cUnit.getSource().indexOf("enum CoffeeSize");
 		IJavaElement elem= cUnit.getElementAt(offset);
 		IMember type= (IMember)elem;
-		Assert.assertTrue(JdtFlags.isStatic(type));
-		Assert.assertFalse(JdtFlags.isAbstract(type));
+		assertTrue(JdtFlags.isStatic(type));
+		assertFalse(JdtFlags.isAbstract(type));
 
 		EnumDeclaration enumNode= ASTNodeSearchUtil.getEnumDeclarationNode((IType)elem, getCompilationUnitNode(buf.toString()));
-		Assert.assertTrue(JdtFlags.isStatic(enumNode));
+		assertTrue(JdtFlags.isStatic(enumNode));
 
 		// testcase for isF an enum
-		Assert.assertFalse(JdtFlags.isFinal(type));
+		assertFalse(JdtFlags.isFinal(type));
 		offset= cUnit.getSource().indexOf("enum Colors");
 		type= (IMember)cUnit.getElementAt(offset);
-		Assert.assertTrue(JdtFlags.isFinal(type));
+		assertTrue(JdtFlags.isFinal(type));
 	}
 
 	@Test
@@ -210,26 +210,26 @@
 		CompilationUnit cuNode= getCompilationUnitNode(buf.toString());
 		IJavaElement javaElem= cUnit.getElementAt(offset);
 		IMember element= (IMember)javaElem;
-		Assert.assertTrue(JdtFlags.isStatic(element));
-		Assert.assertFalse(JdtFlags.isAbstract(element));
+		assertTrue(JdtFlags.isStatic(element));
+		assertFalse(JdtFlags.isAbstract(element));
 
 		EnumDeclaration enumNode= ASTNodeSearchUtil.getEnumDeclarationNode((IType)javaElem, cuNode);
-		Assert.assertTrue(JdtFlags.isStatic(enumNode));
+		assertTrue(JdtFlags.isStatic(enumNode));
 
 		// testing enum constant
 		offset= cUnit.getSource().indexOf("RED");
 		javaElem= cUnit.getElementAt(offset);
 		element= (IMember)javaElem;
-		Assert.assertTrue(JdtFlags.isStatic(element));
-		Assert.assertFalse(JdtFlags.isAbstract(element));
+		assertTrue(JdtFlags.isStatic(element));
+		assertFalse(JdtFlags.isAbstract(element));
 
 		EnumConstantDeclaration enumConst= ASTNodeSearchUtil.getEnumConstantDeclaration((IField)javaElem, cuNode);
-		Assert.assertTrue(JdtFlags.isStatic(enumConst));
+		assertTrue(JdtFlags.isStatic(enumConst));
 
 		// testing enum constant
 		offset= cUnit.getSource().indexOf("Runnable r");
 		element= (IMember)cUnit.getElementAt(offset);
-		Assert.assertFalse(JdtFlags.isFinal(element));
+		assertFalse(JdtFlags.isFinal(element));
 
 	}
 
@@ -246,7 +246,7 @@
 		ICompilationUnit cUnit= pack1.createCompilationUnit("Snippet.java", buf.toString(), false, null);
 		int offset= cUnit.getSource().indexOf("enum Color");
 		IMember element= (IMember)cUnit.getElementAt(offset);
-		Assert.assertFalse(JdtFlags.isFinal(element));
+		assertFalse(JdtFlags.isFinal(element));
 	}
 
 	@Test
@@ -257,16 +257,16 @@
 		IPackageFragmentRoot jarRoot= JavaProjectHelper.addLibraryWithImport(fJProject1, new Path(clsJarPath.getAbsolutePath()), null, null);
 		fJProject1.open(null);
 		fJProject1.getProject().refreshLocal(IResource.DEPTH_INFINITE, null);
-		Assert.assertTrue(jarRoot.exists());
-		Assert.assertTrue(jarRoot.isArchive());
+		assertTrue(jarRoot.exists());
+		assertTrue(jarRoot.isArchive());
 		IPackageFragment pf= jarRoot.getPackageFragment("pack1");//$NON-NLS-1$
-		Assert.assertTrue(pf.exists());
+		assertTrue(pf.exists());
 		IOrdinaryClassFile classFile2= (IOrdinaryClassFile) pf.getClassFile("Snippet.class");
 		IMethod[] clsFile= classFile2.getType().getMethods();
 		IMethod method= clsFile[0];
-		Assert.assertTrue(JdtFlags.isStatic(method));
-		Assert.assertFalse(JdtFlags.isAbstract(method));
-		Assert.assertFalse(JdtFlags.isDefaultMethod(method));
+		assertTrue(JdtFlags.isStatic(method));
+		assertFalse(JdtFlags.isAbstract(method));
+		assertFalse(JdtFlags.isDefaultMethod(method));
 	}
 
 	@Test
@@ -282,18 +282,18 @@
 		ICompilationUnit cUnit= pack1.createCompilationUnit("Snippet.java", buf.toString(), false, null);
 		int offset= cUnit.getSource().indexOf("public default");
 		IMethod method= (IMethod)cUnit.getElementAt(offset);
-		Assert.assertFalse(JdtFlags.isStatic(method));
-		Assert.assertFalse(JdtFlags.isAbstract(method));
-		Assert.assertTrue(JdtFlags.isDefaultMethod(method));
+		assertFalse(JdtFlags.isStatic(method));
+		assertFalse(JdtFlags.isAbstract(method));
+		assertTrue(JdtFlags.isDefaultMethod(method));
 
 		ASTParser p= ASTParser.newParser(IASTSharedValues.SHARED_AST_LEVEL);
 		p.setProject(pack1.getJavaProject());
 		p.setBindingsRecovery(true);
 		try {
 			IMethodBinding binding= (IMethodBinding)p.createBindings(new IJavaElement[] { method }, null)[0];
-			Assert.assertFalse(JdtFlags.isStatic(binding));
-			Assert.assertFalse(JdtFlags.isAbstract(binding));
-			Assert.assertTrue(JdtFlags.isDefaultMethod(binding));
+			assertFalse(JdtFlags.isStatic(binding));
+			assertFalse(JdtFlags.isAbstract(binding));
+			assertTrue(JdtFlags.isDefaultMethod(binding));
 		} catch (OperationCanceledException e) {
 		}
 	}
@@ -306,15 +306,15 @@
 		IPackageFragmentRoot jarRoot= JavaProjectHelper.addLibraryWithImport(fJProject1, new Path(clsJarPath.getAbsolutePath()), null, null);
 		fJProject1.open(null);
 		fJProject1.getProject().refreshLocal(IResource.DEPTH_INFINITE, null);
-		Assert.assertTrue(jarRoot.exists());
-		Assert.assertTrue(jarRoot.isArchive());
+		assertTrue(jarRoot.exists());
+		assertTrue(jarRoot.isArchive());
 		IPackageFragment pf= jarRoot.getPackageFragment("pack1");//$NON-NLS-1$
-		Assert.assertTrue(pf.exists());
+		assertTrue(pf.exists());
 		IOrdinaryClassFile classFile2= (IOrdinaryClassFile) pf.getClassFile("Snippet.class");
 		IMethod method= classFile2.getType().getMethod("defaultMethod", null);
-		Assert.assertTrue(JdtFlags.isDefaultMethod(method));
-		Assert.assertFalse(JdtFlags.isStatic(method));
-		Assert.assertFalse(JdtFlags.isAbstract(method));
+		assertTrue(JdtFlags.isDefaultMethod(method));
+		assertFalse(JdtFlags.isStatic(method));
+		assertFalse(JdtFlags.isAbstract(method));
 	}
 
 	@Test
@@ -333,35 +333,35 @@
 		ICompilationUnit cUnit= pack1.createCompilationUnit("Snippet.java", buf.toString(), false, null);
 		int offset= cUnit.getSource().indexOf("public String notDefaultMethod");
 		IMethod method= (IMethod)cUnit.getElementAt(offset);
-		Assert.assertFalse(JdtFlags.isStatic(method));
-		Assert.assertFalse(JdtFlags.isAbstract(method));
-		Assert.assertFalse(JdtFlags.isDefaultMethod(method));
+		assertFalse(JdtFlags.isStatic(method));
+		assertFalse(JdtFlags.isAbstract(method));
+		assertFalse(JdtFlags.isDefaultMethod(method));
 
 		ASTParser p= ASTParser.newParser(IASTSharedValues.SHARED_AST_LEVEL);
 		p.setProject(pack1.getJavaProject());
 		p.setBindingsRecovery(true);
 		try {
 			IMethodBinding binding= (IMethodBinding)p.createBindings(new IJavaElement[] { method }, null)[0];
-			Assert.assertFalse(JdtFlags.isStatic(binding));
-			Assert.assertFalse(JdtFlags.isAbstract(binding));
-			Assert.assertFalse(JdtFlags.isDefaultMethod(binding));
+			assertFalse(JdtFlags.isStatic(binding));
+			assertFalse(JdtFlags.isAbstract(binding));
+			assertFalse(JdtFlags.isDefaultMethod(binding));
 		} catch (OperationCanceledException e) {
 		}
 
 		offset= cUnit.getSource().indexOf("public String notDefaultIntMet");
 		method= (IMethod)cUnit.getElementAt(offset);
-		Assert.assertFalse(JdtFlags.isStatic(method));
-		Assert.assertTrue(JdtFlags.isAbstract(method));
-		Assert.assertFalse(JdtFlags.isDefaultMethod(method));
+		assertFalse(JdtFlags.isStatic(method));
+		assertTrue(JdtFlags.isAbstract(method));
+		assertFalse(JdtFlags.isDefaultMethod(method));
 
 		p= ASTParser.newParser(IASTSharedValues.SHARED_AST_LEVEL);
 		p.setProject(pack1.getJavaProject());
 		p.setBindingsRecovery(true);
 		try {
 			IMethodBinding binding= (IMethodBinding)p.createBindings(new IJavaElement[] { method }, null)[0];
-			Assert.assertFalse(JdtFlags.isStatic(binding));
-			Assert.assertTrue(JdtFlags.isAbstract(binding));
-			Assert.assertFalse(JdtFlags.isDefaultMethod(binding));
+			assertFalse(JdtFlags.isStatic(binding));
+			assertTrue(JdtFlags.isAbstract(binding));
+			assertFalse(JdtFlags.isDefaultMethod(binding));
 		} catch (OperationCanceledException e) {
 		}
 	}
@@ -378,21 +378,21 @@
 		ICompilationUnit cUnit= pack1.createCompilationUnit("Snippet.java", buf.toString(), false, null);
 		int offset= cUnit.getSource().indexOf("float");
 		IMethod method= (IMethod)cUnit.getElementAt(offset);
-		Assert.assertFalse(JdtFlags.isStatic(method));
-		Assert.assertFalse(JdtFlags.isDefaultMethod(method));
-		Assert.assertTrue(JdtFlags.isAbstract(method));
+		assertFalse(JdtFlags.isStatic(method));
+		assertFalse(JdtFlags.isDefaultMethod(method));
+		assertTrue(JdtFlags.isAbstract(method));
 
 		MethodDeclaration methodNode= ASTNodeSearchUtil.getMethodDeclarationNode(method, getCompilationUnitNode(buf.toString()));
-		Assert.assertFalse(JdtFlags.isStatic(methodNode));
+		assertFalse(JdtFlags.isStatic(methodNode));
 
 		ASTParser p= ASTParser.newParser(IASTSharedValues.SHARED_AST_LEVEL);
 		p.setProject(pack1.getJavaProject());
 		p.setBindingsRecovery(true);
 		try {
 			IMethodBinding binding= (IMethodBinding)p.createBindings(new IJavaElement[] { method }, null)[0];
-			Assert.assertFalse(JdtFlags.isStatic(binding));
-			Assert.assertTrue(JdtFlags.isAbstract(binding));
-			Assert.assertFalse(JdtFlags.isDefaultMethod(binding));
+			assertFalse(JdtFlags.isStatic(binding));
+			assertTrue(JdtFlags.isAbstract(binding));
+			assertFalse(JdtFlags.isDefaultMethod(binding));
 		} catch (OperationCanceledException e) {
 		}
 	}
@@ -409,18 +409,18 @@
 		ICompilationUnit cUnit= pack1.createCompilationUnit("Snippet.java", buf.toString(), false, null);
 		int offset= cUnit.getSource().indexOf("public abstract");
 		IMethod method= (IMethod)cUnit.getElementAt(offset);
-		Assert.assertFalse(JdtFlags.isStatic(method));
-		Assert.assertFalse(JdtFlags.isDefaultMethod(method));
-		Assert.assertTrue(JdtFlags.isAbstract(method));
+		assertFalse(JdtFlags.isStatic(method));
+		assertFalse(JdtFlags.isDefaultMethod(method));
+		assertTrue(JdtFlags.isAbstract(method));
 
 		ASTParser p= ASTParser.newParser(IASTSharedValues.SHARED_AST_LEVEL);
 		p.setProject(pack1.getJavaProject());
 		p.setBindingsRecovery(true);
 		try {
 			IMethodBinding binding= (IMethodBinding)p.createBindings(new IJavaElement[] { method }, null)[0];
-			Assert.assertFalse(JdtFlags.isStatic(binding));
-			Assert.assertTrue(JdtFlags.isAbstract(binding));
-			Assert.assertFalse(JdtFlags.isDefaultMethod(binding));
+			assertFalse(JdtFlags.isStatic(binding));
+			assertTrue(JdtFlags.isAbstract(binding));
+			assertFalse(JdtFlags.isDefaultMethod(binding));
 		} catch (OperationCanceledException e) {
 		}
 	}
@@ -433,15 +433,15 @@
 		IPackageFragmentRoot jarRoot= JavaProjectHelper.addLibraryWithImport(fJProject1, new Path(clsJarPath.getAbsolutePath()), null, null);
 		fJProject1.open(null);
 		fJProject1.getProject().refreshLocal(IResource.DEPTH_INFINITE, null);
-		Assert.assertTrue(jarRoot.exists());
-		Assert.assertTrue(jarRoot.isArchive());
+		assertTrue(jarRoot.exists());
+		assertTrue(jarRoot.isArchive());
 		IPackageFragment pf= jarRoot.getPackageFragment("pack1");//$NON-NLS-1$
-		Assert.assertTrue(pf.exists());
+		assertTrue(pf.exists());
 		IOrdinaryClassFile classFile2= (IOrdinaryClassFile) pf.getClassFile("Snippet.class");
 		IMethod method= classFile2.getType().getMethod("explicitAbstractMethod", null);
-		Assert.assertFalse(JdtFlags.isStatic(method));
-		Assert.assertFalse(JdtFlags.isDefaultMethod(method));
-		Assert.assertTrue(JdtFlags.isAbstract(method));
+		assertFalse(JdtFlags.isStatic(method));
+		assertFalse(JdtFlags.isDefaultMethod(method));
+		assertTrue(JdtFlags.isAbstract(method));
 	}
 
 	@Test
@@ -452,15 +452,15 @@
 		IPackageFragmentRoot jarRoot= JavaProjectHelper.addLibraryWithImport(fJProject1, new Path(clsJarPath.getAbsolutePath()), null, null);
 		fJProject1.open(null);
 		fJProject1.getProject().refreshLocal(IResource.DEPTH_INFINITE, null);
-		Assert.assertTrue(jarRoot.exists());
-		Assert.assertTrue(jarRoot.isArchive());
+		assertTrue(jarRoot.exists());
+		assertTrue(jarRoot.isArchive());
 		IPackageFragment pf= jarRoot.getPackageFragment("pack1");//$NON-NLS-1$
-		Assert.assertTrue(pf.exists());
+		assertTrue(pf.exists());
 		IOrdinaryClassFile classFile2= (IOrdinaryClassFile) pf.getClassFile("Snippet.class");
 		IMethod method= classFile2.getType().getMethod("implicitAbstractMethod", null);
-		Assert.assertFalse(JdtFlags.isStatic(method));
-		Assert.assertFalse(JdtFlags.isDefaultMethod(method));
-		Assert.assertTrue(JdtFlags.isAbstract(method));
+		assertFalse(JdtFlags.isStatic(method));
+		assertFalse(JdtFlags.isDefaultMethod(method));
+		assertTrue(JdtFlags.isAbstract(method));
 	}
 
 	@Test
@@ -479,13 +479,13 @@
 		int offset= cUnit.getSource().indexOf("i=");
 		IJavaElement elem= cUnit.getElementAt(offset);
 		FieldDeclaration field= ASTNodeSearchUtil.getFieldDeclarationNode((IField)elem, cuNode);
-		Assert.assertTrue(JdtFlags.isStatic(field));
-		Assert.assertTrue(JdtFlags.isStatic((IField)elem));
+		assertTrue(JdtFlags.isStatic(field));
+		assertTrue(JdtFlags.isStatic((IField)elem));
 
 		offset= cUnit.getSource().indexOf("name");
 		elem= cUnit.getElementAt(offset);
 		AnnotationTypeMemberDeclaration annotationMember= ASTNodeSearchUtil.getAnnotationTypeMemberDeclarationNode((IMethod)elem, cuNode);
-		Assert.assertFalse(JdtFlags.isStatic(annotationMember));
-		Assert.assertFalse(JdtFlags.isStatic((IMethod)elem));
+		assertFalse(JdtFlags.isStatic(annotationMember));
+		assertFalse(JdtFlags.isStatic((IMethod)elem));
 	}
 }
diff --git a/org.eclipse.jdt.ui.tests/ui/org/eclipse/jdt/ui/tests/core/JavaElementLabelsTest.java b/org.eclipse.jdt.ui.tests/ui/org/eclipse/jdt/ui/tests/core/JavaElementLabelsTest.java
index c6bc088..25493fe 100644
--- a/org.eclipse.jdt.ui.tests/ui/org/eclipse/jdt/ui/tests/core/JavaElementLabelsTest.java
+++ b/org.eclipse.jdt.ui.tests/ui/org/eclipse/jdt/ui/tests/core/JavaElementLabelsTest.java
@@ -47,14 +47,14 @@
 
 	@Before
 	public void setUp() throws Exception {
-		fJProject1= ProjectTestSetup.getProject();
+		fJProject1= pts.getProject();
 		IPreferenceStore store= PreferenceConstants.getPreferenceStore();
 		store.setValue(PreferenceConstants.APPEARANCE_COMPRESS_PACKAGE_NAMES, false);
 	}
 
 	@After
 	public void tearDown() throws Exception {
-		JavaProjectHelper.clear(fJProject1, ProjectTestSetup.getDefaultClasspath());
+		JavaProjectHelper.clear(fJProject1, pts.getDefaultClasspath());
 	}
 
 	private static void assertExpectedLabel(IJavaElement element, String expectedLabel, long flags) {
diff --git a/org.eclipse.jdt.ui.tests/ui/org/eclipse/jdt/ui/tests/core/JavaElementLabelsTest1d8.java b/org.eclipse.jdt.ui.tests/ui/org/eclipse/jdt/ui/tests/core/JavaElementLabelsTest1d8.java
index 5772c4c..b2b23c6 100644
--- a/org.eclipse.jdt.ui.tests/ui/org/eclipse/jdt/ui/tests/core/JavaElementLabelsTest1d8.java
+++ b/org.eclipse.jdt.ui.tests/ui/org/eclipse/jdt/ui/tests/core/JavaElementLabelsTest1d8.java
@@ -49,7 +49,7 @@
 
 	@Before
 	public void setUp() throws Exception {
-		fJProject1= Java1d8ProjectTestSetup.getProject();
+		fJProject1= j18p.getProject();
 
 		IPreferenceStore store= PreferenceConstants.getPreferenceStore();
 		store.setValue(PreferenceConstants.APPEARANCE_COMPRESS_PACKAGE_NAMES, false);
@@ -57,7 +57,7 @@
 
 	@After
 	public void tearDown() throws Exception {
-		JavaProjectHelper.clear(fJProject1, Java1d8ProjectTestSetup.getDefaultClasspath());
+		JavaProjectHelper.clear(fJProject1, j18p.getDefaultClasspath());
 	}
 
 	@Test
diff --git a/org.eclipse.jdt.ui.tests/ui/org/eclipse/jdt/ui/tests/core/MethodOverrideTest.java b/org.eclipse.jdt.ui.tests/ui/org/eclipse/jdt/ui/tests/core/MethodOverrideTest.java
index e3c10b4..d1e300a 100644
--- a/org.eclipse.jdt.ui.tests/ui/org/eclipse/jdt/ui/tests/core/MethodOverrideTest.java
+++ b/org.eclipse.jdt.ui.tests/ui/org/eclipse/jdt/ui/tests/core/MethodOverrideTest.java
@@ -15,7 +15,7 @@
 
 import static org.junit.Assert.assertEquals;
 import static org.junit.Assert.assertNotNull;
-import static org.junit.Assert.assertTrue;
+import static org.junit.Assert.fail;
 
 import java.util.Hashtable;
 import java.util.List;
@@ -79,14 +79,14 @@
 
 	@Before
 	public void setUp() throws Exception {
-		fJProject1= ProjectTestSetup.getProject();
+		fJProject1= pts.getProject();
 		Hashtable<String, String> options= TestOptions.getDefaultOptions();
 		JavaCore.setOptions(options);
 	}
 
 	@After
 	public void tearDown() throws Exception {
-		JavaProjectHelper.clear(fJProject1, ProjectTestSetup.getDefaultClasspath());
+		JavaProjectHelper.clear(fJProject1, pts.getDefaultClasspath());
 	}
 
 	@Test
@@ -471,7 +471,7 @@
 			for (IProblem prob : problems) {
 				buf.append(prob.getMessage()).append('\n');
 			}
-			assertTrue(buf.toString(), false);
+			fail(buf.toString());
 		}
 
 
diff --git a/org.eclipse.jdt.ui.tests/ui/org/eclipse/jdt/ui/tests/core/MethodOverrideTest1d8.java b/org.eclipse.jdt.ui.tests/ui/org/eclipse/jdt/ui/tests/core/MethodOverrideTest1d8.java
index 7854ad0..1d0a89f 100644
--- a/org.eclipse.jdt.ui.tests/ui/org/eclipse/jdt/ui/tests/core/MethodOverrideTest1d8.java
+++ b/org.eclipse.jdt.ui.tests/ui/org/eclipse/jdt/ui/tests/core/MethodOverrideTest1d8.java
@@ -50,7 +50,7 @@
 
 	@Before
 	public void before() throws Exception {
-		fJProject1= Java1d8ProjectTestSetup.getProject();
+		fJProject1= j18p.getProject();
 		fSrc= JavaProjectHelper.addSourceContainer(fJProject1, "src");
 
 		Hashtable<String, String> options= TestOptions.getDefaultOptions();
@@ -59,7 +59,7 @@
 
 	@After
 	public void after() throws Exception {
-		JavaProjectHelper.clear(fJProject1, Java1d8ProjectTestSetup.getDefaultClasspath());
+		JavaProjectHelper.clear(fJProject1, j18p.getDefaultClasspath());
 	}
 
 	@Test
diff --git a/org.eclipse.jdt.ui.tests/ui/org/eclipse/jdt/ui/tests/core/PartialASTTest.java b/org.eclipse.jdt.ui.tests/ui/org/eclipse/jdt/ui/tests/core/PartialASTTest.java
index abeb246..7c4952b 100644
--- a/org.eclipse.jdt.ui.tests/ui/org/eclipse/jdt/ui/tests/core/PartialASTTest.java
+++ b/org.eclipse.jdt.ui.tests/ui/org/eclipse/jdt/ui/tests/core/PartialASTTest.java
@@ -76,14 +76,14 @@
 		IPreferenceStore store= JavaPlugin.getDefault().getPreferenceStore();
 		store.setValue(PreferenceConstants.CODEGEN_ADD_COMMENTS, false);
 
-		fJProject1= ProjectTestSetup.getProject();
+		fJProject1= pts.getProject();
 
 		fSourceFolder= JavaProjectHelper.addSourceContainer(fJProject1, "src");
 	}
 
 	@After
 	public void tearDown() throws Exception {
-		JavaProjectHelper.clear(fJProject1, ProjectTestSetup.getDefaultClasspath());
+		JavaProjectHelper.clear(fJProject1, pts.getDefaultClasspath());
 	}
 
 	@Test
@@ -146,24 +146,24 @@
 		List<AbstractTypeDeclaration> list= astRoot.types();
 		for (AbstractTypeDeclaration element : list) {
 			TypeDeclaration decl= (TypeDeclaration) element;
-			assertTrue(decl.resolveBinding() != null);
+			assertNotNull(decl.resolveBinding());
 
 			if (!decl.isInterface() && decl.getSuperclassType() != null) {
-				assertTrue(decl.getSuperclassType().resolveBinding() != null);
+				assertNotNull(decl.getSuperclassType().resolveBinding());
 			}
 			List<Type> interfaces= decl.superInterfaceTypes();
 			for (Type interface1 : interfaces) {
-				assertTrue(interface1.resolveBinding() != null);
+				assertNotNull(interface1.resolveBinding());
 			}
 
 			for (MethodDeclaration meth : decl.getMethods()) {
-				assertTrue(meth.resolveBinding() != null);
+				assertNotNull(meth.resolveBinding());
 				List<SingleVariableDeclaration> params= meth.parameters();
 				for (SingleVariableDeclaration arg : params) {
-					assertTrue(arg.resolveBinding() != null);
+					assertNotNull(arg.resolveBinding());
 				}
 				if (!meth.isConstructor()) {
-					assertTrue(meth.getReturnType2().resolveBinding() != null);
+					assertNotNull(meth.getReturnType2().resolveBinding());
 				}
 			}
 		}
diff --git a/org.eclipse.jdt.ui.tests/ui/org/eclipse/jdt/ui/tests/core/ScopeAnalyzerTest.java b/org.eclipse.jdt.ui.tests/ui/org/eclipse/jdt/ui/tests/core/ScopeAnalyzerTest.java
index 2fd97d8..742dcbf 100644
--- a/org.eclipse.jdt.ui.tests/ui/org/eclipse/jdt/ui/tests/core/ScopeAnalyzerTest.java
+++ b/org.eclipse.jdt.ui.tests/ui/org/eclipse/jdt/ui/tests/core/ScopeAnalyzerTest.java
@@ -13,8 +13,7 @@
  *******************************************************************************/
 package org.eclipse.jdt.ui.tests.core;
 
-import static org.junit.Assert.assertFalse;
-import static org.junit.Assert.assertTrue;
+import static org.junit.Assert.fail;
 
 import java.util.Hashtable;
 
@@ -54,7 +53,7 @@
 	@Before
 	public void setUp() throws Exception {
 
-		fJProject1= ProjectTestSetup.getProject();
+		fJProject1= pts.getProject();
 		fSourceFolder= JavaProjectHelper.addSourceContainer(fJProject1, "src");
 
 		Hashtable<String, String> options= TestOptions.getDefaultOptions();
@@ -66,7 +65,7 @@
 
 	@After
 	public void tearDown() throws Exception {
-		JavaProjectHelper.clear(fJProject1, ProjectTestSetup.getDefaultClasspath());
+		JavaProjectHelper.clear(fJProject1, pts.getDefaultClasspath());
 	}
 
 	@Test
@@ -917,7 +916,7 @@
 					return;
 				}
 			}
-			assertFalse("getDefaultValue not found", true);
+			fail("getDefaultValue not found");
 		}
 
 	}
@@ -937,7 +936,7 @@
 			for (IProblem problem : problems) {
 				buf.append(problem.getMessage()).append('\n');
 			}
-			assertTrue(buf.toString(), false);
+			fail(buf.toString());
 		}
 	}
 
diff --git a/org.eclipse.jdt.ui.tests/ui/org/eclipse/jdt/ui/tests/core/TypeHierarchyTest.java b/org.eclipse.jdt.ui.tests/ui/org/eclipse/jdt/ui/tests/core/TypeHierarchyTest.java
index 6b82ea9..4f373d4 100644
--- a/org.eclipse.jdt.ui.tests/ui/org/eclipse/jdt/ui/tests/core/TypeHierarchyTest.java
+++ b/org.eclipse.jdt.ui.tests/ui/org/eclipse/jdt/ui/tests/core/TypeHierarchyTest.java
@@ -51,13 +51,13 @@
 
 	@Before
 	public void setUp() throws Exception {
-		fJavaProject1= ProjectTestSetup.getProject();
+		fJavaProject1= pts.getProject();
 		fJavaProject2= JavaProjectHelper.createJavaProject("TestProject2", "bin");
 	}
 
 	@After
 	public void tearDown () throws Exception {
-		JavaProjectHelper.clear(fJavaProject1, ProjectTestSetup.getDefaultClasspath());
+		JavaProjectHelper.clear(fJavaProject1, pts.getDefaultClasspath());
 		JavaProjectHelper.delete(fJavaProject2);
 	}
 
diff --git a/org.eclipse.jdt.ui.tests/ui/org/eclipse/jdt/ui/tests/core/TypeRulesTest.java b/org.eclipse.jdt.ui.tests/ui/org/eclipse/jdt/ui/tests/core/TypeRulesTest.java
index c973ee4..4bbca53 100644
--- a/org.eclipse.jdt.ui.tests/ui/org/eclipse/jdt/ui/tests/core/TypeRulesTest.java
+++ b/org.eclipse.jdt.ui.tests/ui/org/eclipse/jdt/ui/tests/core/TypeRulesTest.java
@@ -13,8 +13,8 @@
  *******************************************************************************/
 package org.eclipse.jdt.ui.tests.core;
 
+import static org.junit.Assert.assertEquals;
 import static org.junit.Assert.assertNotNull;
-import static org.junit.Assert.assertTrue;
 
 import java.util.Hashtable;
 import java.util.List;
@@ -63,13 +63,13 @@
 		options.put(JavaCore.COMPILER_PB_UNCHECKED_TYPE_OPERATION, JavaCore.IGNORE);
 		JavaCore.setOptions(options);
 
-		fJProject1= ProjectTestSetup.getProject();
+		fJProject1= pts.getProject();
 		fSourceFolder= JavaProjectHelper.addSourceContainer(fJProject1, "src");
 	}
 
 	@After
 	public void tearDown() throws Exception {
-		JavaProjectHelper.clear(fJProject1, ProjectTestSetup.getDefaultClasspath());
+		JavaProjectHelper.clear(fJProject1, pts.getDefaultClasspath());
 	}
 
 	private VariableDeclarationFragment[] createVariables() throws JavaModelException {
@@ -197,7 +197,7 @@
 				}
 			}
 		}
-		assertTrue(errors.toString(), errors.length() == 0);
+		assertEquals(errors.toString(), 0, errors.length());
 	}
 
 	@Test
@@ -238,7 +238,7 @@
 				}
 			}
 		}
-		assertTrue(errors.toString(), errors.length() == 0);
+		assertEquals(errors.toString(), 0, errors.length());
 	}
 
 	@Test
@@ -279,7 +279,7 @@
 				}
 			}
 		}
-		assertTrue(errors.toString(), errors.length() == 0);
+		assertEquals(errors.toString(), 0, errors.length());
 	}
 
 	@Test
@@ -332,7 +332,7 @@
 				}
 			}
 		}
-		assertTrue(errors.toString(), errors.length() == 0);
+		assertEquals(errors.toString(), 0, errors.length());
 	}
 
 }
diff --git a/org.eclipse.jdt.ui.tests/ui/org/eclipse/jdt/ui/tests/core/rules/Java10ProjectTestSetup.java b/org.eclipse.jdt.ui.tests/ui/org/eclipse/jdt/ui/tests/core/rules/Java10ProjectTestSetup.java
index b056699..de76470 100644
--- a/org.eclipse.jdt.ui.tests/ui/org/eclipse/jdt/ui/tests/core/rules/Java10ProjectTestSetup.java
+++ b/org.eclipse.jdt.ui.tests/ui/org/eclipse/jdt/ui/tests/core/rules/Java10ProjectTestSetup.java
@@ -36,12 +36,14 @@
 
 	public static final String PROJECT_NAME10= "TestSetupProject10";
 
-	public static IJavaProject getProject() {
+	@Override
+	public IJavaProject getProject() {
 		IProject project= ResourcesPlugin.getWorkspace().getRoot().getProject(PROJECT_NAME10);
 		return JavaCore.create(project);
 	}
 
-	public static IClasspathEntry[] getDefaultClasspath() throws CoreException {
+	@Override
+	public IClasspathEntry[] getDefaultClasspath() throws CoreException {
 		IPath[] rtJarPath= JavaProjectHelper.findRtJar(JavaProjectHelper.RT_STUBS_10);
 		IClasspathAttribute[] extraAttributes= { JavaCore.newClasspathAttribute(IClasspathAttribute.MODULE, Boolean.TRUE.toString()) };
 		return new IClasspathEntry[] { JavaCore.newLibraryEntry(rtJarPath[0], rtJarPath[1], rtJarPath[2], ClasspathEntry.NO_ACCESS_RULES, extraAttributes, true) };
diff --git a/org.eclipse.jdt.ui.tests/ui/org/eclipse/jdt/ui/tests/core/rules/Java12ProjectTestSetup.java b/org.eclipse.jdt.ui.tests/ui/org/eclipse/jdt/ui/tests/core/rules/Java12ProjectTestSetup.java
index d9f5f88..d9b2208 100644
--- a/org.eclipse.jdt.ui.tests/ui/org/eclipse/jdt/ui/tests/core/rules/Java12ProjectTestSetup.java
+++ b/org.eclipse.jdt.ui.tests/ui/org/eclipse/jdt/ui/tests/core/rules/Java12ProjectTestSetup.java
@@ -38,12 +38,14 @@
 
 	private boolean enable_preview_feature;
 
-	public static IJavaProject getProject() {
+	@Override
+	public IJavaProject getProject() {
 		IProject project= ResourcesPlugin.getWorkspace().getRoot().getProject(PROJECT_NAME12);
 		return JavaCore.create(project);
 	}
 
-	public static IClasspathEntry[] getDefaultClasspath() throws CoreException {
+	@Override
+	public IClasspathEntry[] getDefaultClasspath() throws CoreException {
 		IPath[] rtJarPath= JavaProjectHelper.findRtJar(JavaProjectHelper.RT_STUBS_12);
 		IClasspathAttribute[] extraAttributes= { JavaCore.newClasspathAttribute(IClasspathAttribute.MODULE, Boolean.TRUE.toString()) };
 		return new IClasspathEntry[] { JavaCore.newLibraryEntry(rtJarPath[0], rtJarPath[1], rtJarPath[2], ClasspathEntry.NO_ACCESS_RULES, extraAttributes, true) };
diff --git a/org.eclipse.jdt.ui.tests/ui/org/eclipse/jdt/ui/tests/core/rules/Java13ProjectTestSetup.java b/org.eclipse.jdt.ui.tests/ui/org/eclipse/jdt/ui/tests/core/rules/Java13ProjectTestSetup.java
index 8648f89..a6e2550 100644
--- a/org.eclipse.jdt.ui.tests/ui/org/eclipse/jdt/ui/tests/core/rules/Java13ProjectTestSetup.java
+++ b/org.eclipse.jdt.ui.tests/ui/org/eclipse/jdt/ui/tests/core/rules/Java13ProjectTestSetup.java
@@ -38,12 +38,14 @@
 
 	private boolean enable_preview_feature;
 
-	public static IJavaProject getProject() {
+	@Override
+	public IJavaProject getProject() {
 		IProject project= ResourcesPlugin.getWorkspace().getRoot().getProject(PROJECT_NAME13);
 		return JavaCore.create(project);
 	}
 
-	public static IClasspathEntry[] getDefaultClasspath() throws CoreException {
+	@Override
+	public IClasspathEntry[] getDefaultClasspath() throws CoreException {
 		IPath[] rtJarPath= JavaProjectHelper.findRtJar(JavaProjectHelper.RT_STUBS13);
 		IClasspathAttribute[] extraAttributes= { JavaCore.newClasspathAttribute(IClasspathAttribute.MODULE, Boolean.TRUE.toString()) };
 		return new IClasspathEntry[] { JavaCore.newLibraryEntry(rtJarPath[0], rtJarPath[1], rtJarPath[2], ClasspathEntry.NO_ACCESS_RULES, extraAttributes, true) };
diff --git a/org.eclipse.jdt.ui.tests/ui/org/eclipse/jdt/ui/tests/core/rules/Java14ProjectTestSetup.java b/org.eclipse.jdt.ui.tests/ui/org/eclipse/jdt/ui/tests/core/rules/Java14ProjectTestSetup.java
index 6fa3908..0fc6f4c 100644
--- a/org.eclipse.jdt.ui.tests/ui/org/eclipse/jdt/ui/tests/core/rules/Java14ProjectTestSetup.java
+++ b/org.eclipse.jdt.ui.tests/ui/org/eclipse/jdt/ui/tests/core/rules/Java14ProjectTestSetup.java
@@ -38,12 +38,14 @@
 
 	private boolean enable_preview_feature;
 
-	public static IJavaProject getProject() {
+	@Override
+	public IJavaProject getProject() {
 		IProject project= ResourcesPlugin.getWorkspace().getRoot().getProject(PROJECT_NAME14);
 		return JavaCore.create(project);
 	}
 
-	public static IClasspathEntry[] getDefaultClasspath() throws CoreException {
+	@Override
+	public IClasspathEntry[] getDefaultClasspath() throws CoreException {
 		IPath[] rtJarPath= JavaProjectHelper.findRtJar(JavaProjectHelper.RT_STUBS14);
 		IClasspathAttribute[] extraAttributes= { JavaCore.newClasspathAttribute(IClasspathAttribute.MODULE, Boolean.TRUE.toString()) };
 		return new IClasspathEntry[] { JavaCore.newLibraryEntry(rtJarPath[0], rtJarPath[1], rtJarPath[2], ClasspathEntry.NO_ACCESS_RULES, extraAttributes, true) };
diff --git a/org.eclipse.jdt.ui.tests/ui/org/eclipse/jdt/ui/tests/core/rules/Java1d5ProjectTestSetup.java b/org.eclipse.jdt.ui.tests/ui/org/eclipse/jdt/ui/tests/core/rules/Java1d5ProjectTestSetup.java
index b44f91a..a6914d5 100644
--- a/org.eclipse.jdt.ui.tests/ui/org/eclipse/jdt/ui/tests/core/rules/Java1d5ProjectTestSetup.java
+++ b/org.eclipse.jdt.ui.tests/ui/org/eclipse/jdt/ui/tests/core/rules/Java1d5ProjectTestSetup.java
@@ -35,12 +35,14 @@
 public class Java1d5ProjectTestSetup extends ProjectTestSetup {
 	public static final String PROJECT_NAME1d5= "TestSetupProject1d5";
 
-	public static IJavaProject getProject() {
+	@Override
+	public IJavaProject getProject() {
 		IProject project= ResourcesPlugin.getWorkspace().getRoot().getProject(PROJECT_NAME1d5);
 		return JavaCore.create(project);
 	}
 
-	public static IClasspathEntry[] getDefaultClasspath() throws CoreException {
+	@Override
+	public IClasspathEntry[] getDefaultClasspath() throws CoreException {
 		IPath[] rtJarPath= JavaProjectHelper.findRtJar(JavaProjectHelper.RT_STUBS_15);
 		return new IClasspathEntry[] { JavaCore.newLibraryEntry(rtJarPath[0], rtJarPath[1], rtJarPath[2], true) };
 	}
diff --git a/org.eclipse.jdt.ui.tests/ui/org/eclipse/jdt/ui/tests/core/rules/Java1d7ProjectTestSetup.java b/org.eclipse.jdt.ui.tests/ui/org/eclipse/jdt/ui/tests/core/rules/Java1d7ProjectTestSetup.java
index af8fd17..6920fc1 100644
--- a/org.eclipse.jdt.ui.tests/ui/org/eclipse/jdt/ui/tests/core/rules/Java1d7ProjectTestSetup.java
+++ b/org.eclipse.jdt.ui.tests/ui/org/eclipse/jdt/ui/tests/core/rules/Java1d7ProjectTestSetup.java
@@ -33,12 +33,14 @@
 
 	public static final String PROJECT_NAME1D7= "TestSetupProject1d7";
 
-	public static IJavaProject getProject() {
+	@Override
+	public IJavaProject getProject() {
 		IProject project= ResourcesPlugin.getWorkspace().getRoot().getProject(PROJECT_NAME1D7);
 		return JavaCore.create(project);
 	}
 
-	public static IClasspathEntry[] getDefaultClasspath() throws CoreException {
+	@Override
+	public IClasspathEntry[] getDefaultClasspath() throws CoreException {
 		IPath[] rtJarPath= JavaProjectHelper.findRtJar(JavaProjectHelper.RT_STUBS_17);
 		return new IClasspathEntry[] { JavaCore.newLibraryEntry(rtJarPath[0], rtJarPath[1], rtJarPath[2], true) };
 	}
diff --git a/org.eclipse.jdt.ui.tests/ui/org/eclipse/jdt/ui/tests/core/rules/Java1d8ProjectTestSetup.java b/org.eclipse.jdt.ui.tests/ui/org/eclipse/jdt/ui/tests/core/rules/Java1d8ProjectTestSetup.java
index 224f354..1f3f03d 100644
--- a/org.eclipse.jdt.ui.tests/ui/org/eclipse/jdt/ui/tests/core/rules/Java1d8ProjectTestSetup.java
+++ b/org.eclipse.jdt.ui.tests/ui/org/eclipse/jdt/ui/tests/core/rules/Java1d8ProjectTestSetup.java
@@ -43,12 +43,14 @@
 public class Java1d8ProjectTestSetup extends ProjectTestSetup {
 	public static final String PROJECT_NAME18= "TestSetupProject18";
 
-	public static IJavaProject getProject() {
+	@Override
+	public IJavaProject getProject() {
 		IProject project= ResourcesPlugin.getWorkspace().getRoot().getProject(PROJECT_NAME18);
 		return JavaCore.create(project);
 	}
 
-	public static IClasspathEntry[] getDefaultClasspath() throws CoreException {
+	@Override
+	public IClasspathEntry[] getDefaultClasspath() throws CoreException {
 		IPath[] rtJarPath= JavaProjectHelper.findRtJar(JavaProjectHelper.RT_STUBS_18);
 		return new IClasspathEntry[] { JavaCore.newLibraryEntry(rtJarPath[0], rtJarPath[1], rtJarPath[2], true) };
 	}
diff --git a/org.eclipse.jdt.ui.tests/ui/org/eclipse/jdt/ui/tests/core/rules/Java9ProjectTestSetup.java b/org.eclipse.jdt.ui.tests/ui/org/eclipse/jdt/ui/tests/core/rules/Java9ProjectTestSetup.java
index 120cc7a..7ac288a 100644
--- a/org.eclipse.jdt.ui.tests/ui/org/eclipse/jdt/ui/tests/core/rules/Java9ProjectTestSetup.java
+++ b/org.eclipse.jdt.ui.tests/ui/org/eclipse/jdt/ui/tests/core/rules/Java9ProjectTestSetup.java
@@ -34,12 +34,14 @@
 
 	public static final String PROJECT_NAME9= "TestSetupProject9";
 
-	public static IJavaProject getProject() {
+	@Override
+	public IJavaProject getProject() {
 		IProject project= ResourcesPlugin.getWorkspace().getRoot().getProject(PROJECT_NAME9);
 		return JavaCore.create(project);
 	}
 
-	public static IClasspathEntry[] getDefaultClasspath() throws CoreException {
+	@Override
+	public IClasspathEntry[] getDefaultClasspath() throws CoreException {
 		IPath[] rtJarPath= JavaProjectHelper.findRtJar(JavaProjectHelper.RT_STUBS_9);
 		return new IClasspathEntry[] { JavaCore.newLibraryEntry(rtJarPath[0], rtJarPath[1], rtJarPath[2],
 						null,
diff --git a/org.eclipse.jdt.ui.tests/ui/org/eclipse/jdt/ui/tests/core/rules/ProjectTestSetup.java b/org.eclipse.jdt.ui.tests/ui/org/eclipse/jdt/ui/tests/core/rules/ProjectTestSetup.java
index aaf2298..b340af8 100644
--- a/org.eclipse.jdt.ui.tests/ui/org/eclipse/jdt/ui/tests/core/rules/ProjectTestSetup.java
+++ b/org.eclipse.jdt.ui.tests/ui/org/eclipse/jdt/ui/tests/core/rules/ProjectTestSetup.java
@@ -44,12 +44,12 @@
 
 	public static final String PROJECT_NAME= "TestSetupProject";
 
-	public static IJavaProject getProject() {
+	public IJavaProject getProject() {
 		IProject project= ResourcesPlugin.getWorkspace().getRoot().getProject(PROJECT_NAME);
 		return JavaCore.create(project);
 	}
 
-	public static IClasspathEntry[] getDefaultClasspath() throws CoreException {
+	public IClasspathEntry[] getDefaultClasspath() throws CoreException {
 		IPath[] rtJarPath= JavaProjectHelper.findRtJar(JavaProjectHelper.RT_STUBS_15);
 		return new IClasspathEntry[] {  JavaCore.newLibraryEntry(rtJarPath[0], rtJarPath[1], rtJarPath[2], true) };
 	}
diff --git a/org.eclipse.jdt.ui.tests/ui/org/eclipse/jdt/ui/tests/core/source/AddUnimplementedMethodsTest1d8.java b/org.eclipse.jdt.ui.tests/ui/org/eclipse/jdt/ui/tests/core/source/AddUnimplementedMethodsTest1d8.java
index a9e1a0b..243124a 100644
--- a/org.eclipse.jdt.ui.tests/ui/org/eclipse/jdt/ui/tests/core/source/AddUnimplementedMethodsTest1d8.java
+++ b/org.eclipse.jdt.ui.tests/ui/org/eclipse/jdt/ui/tests/core/source/AddUnimplementedMethodsTest1d8.java
@@ -13,6 +13,7 @@
  *******************************************************************************/
 package org.eclipse.jdt.ui.tests.core.source;
 
+import static org.junit.Assert.assertEquals;
 import static org.junit.Assert.assertNotNull;
 import static org.junit.Assert.assertTrue;
 
@@ -62,14 +63,14 @@
 
 	@Before
 	public void setUp() throws Exception {
-		fJavaProject= Java1d8ProjectTestSetup.getProject();
+		fJavaProject= j18p.getProject();
 		IPackageFragmentRoot root= JavaProjectHelper.addSourceContainer(fJavaProject, "src");
 		fPackage= root.createPackageFragment("ibm.util", true, null);
 	}
 
 	@After
 	public void tearDown() throws Exception {
-		JavaProjectHelper.clear(fJavaProject, Java1d8ProjectTestSetup.getDefaultClasspath());
+		JavaProjectHelper.clear(fJavaProject, j18p.getDefaultClasspath());
 		fJavaProject= null;
 		fPackage= null;
 	}
@@ -107,7 +108,7 @@
 	private void checkMethods(String[] expected, IMethod[] methods) {
 		int nMethods= methods.length;
 		int nExpected= expected.length;
-		assertTrue("" + nExpected + " methods expected, is " + nMethods, nMethods == nExpected);
+		assertEquals("" + nExpected + " methods expected, is " + nMethods, nExpected, nMethods);
 		for (int i= 0; i < nExpected; i++) {
 			String methName= expected[i];
 			assertTrue("method " + methName + " expected", nameContained(methName, methods));
diff --git a/org.eclipse.jdt.ui.tests/ui/org/eclipse/jdt/ui/tests/hover/JavadocHoverTests.java b/org.eclipse.jdt.ui.tests/ui/org/eclipse/jdt/ui/tests/hover/JavadocHoverTests.java
index 3bcb69f..24795be 100644
--- a/org.eclipse.jdt.ui.tests/ui/org/eclipse/jdt/ui/tests/hover/JavadocHoverTests.java
+++ b/org.eclipse.jdt.ui.tests/ui/org/eclipse/jdt/ui/tests/hover/JavadocHoverTests.java
@@ -56,13 +56,13 @@
 
 	@Before
 	public void setUp() throws Exception {
-		fJProject1= ProjectTestSetup.getProject();
+		fJProject1= pts.getProject();
 		JavaProjectHelper.addSourceContainer(fJProject1, "src");
 	}
 
 	@After
 	public void tearDown() throws Exception {
-		JavaProjectHelper.clear(fJProject1, ProjectTestSetup.getDefaultClasspath());
+		JavaProjectHelper.clear(fJProject1, pts.getDefaultClasspath());
 	}
 
 	protected ICompilationUnit getWorkingCopy(String path, String source, WorkingCopyOwner owner) throws JavaModelException {
diff --git a/org.eclipse.jdt.ui.tests/ui/org/eclipse/jdt/ui/tests/hover/PackageJavadocTests.java b/org.eclipse.jdt.ui.tests/ui/org/eclipse/jdt/ui/tests/hover/PackageJavadocTests.java
index 3d0c65f..5470d1a 100644
--- a/org.eclipse.jdt.ui.tests/ui/org/eclipse/jdt/ui/tests/hover/PackageJavadocTests.java
+++ b/org.eclipse.jdt.ui.tests/ui/org/eclipse/jdt/ui/tests/hover/PackageJavadocTests.java
@@ -357,12 +357,11 @@
 
 	@Before
 	public void setUp() throws Exception {
-		fJProject1= ProjectTestSetup.getProject();
-
+		fJProject1= pts.getProject();
 	}
 
 	@After
 	public void tearDown() throws Exception {
-		JavaProjectHelper.clear(fJProject1, ProjectTestSetup.getDefaultClasspath());
+		JavaProjectHelper.clear(fJProject1, pts.getDefaultClasspath());
 	}
 }
diff --git a/org.eclipse.jdt.ui.tests/ui/org/eclipse/jdt/ui/tests/jarexport/FatJarExportTests.java b/org.eclipse.jdt.ui.tests/ui/org/eclipse/jdt/ui/tests/jarexport/FatJarExportTests.java
index 608ad3f..e881d55 100644
--- a/org.eclipse.jdt.ui.tests/ui/org/eclipse/jdt/ui/tests/jarexport/FatJarExportTests.java
+++ b/org.eclipse.jdt.ui.tests/ui/org/eclipse/jdt/ui/tests/jarexport/FatJarExportTests.java
@@ -124,7 +124,7 @@
 
 	@Before
 	public void setUp() throws Exception {
-		fProject= ProjectTestSetup.getProject();
+		fProject= pts.getProject();
 
 		Map<String, String> options= fProject.getOptions(false);
 		String compliance= JavaCore.VERSION_1_4;
@@ -149,7 +149,7 @@
 
 	@After
 	public void tearDown() throws Exception {
-		JavaProjectHelper.clear(fProject, ProjectTestSetup.getDefaultClasspath());
+		JavaProjectHelper.clear(fProject, pts.getDefaultClasspath());
 	}
 
 	private static String getFooContent() {
@@ -778,7 +778,7 @@
 	public void exportOtherProject() throws Exception {
 		IJavaProject otherProject= JavaProjectHelper.createJavaProject("OtherProject", "bin"); //$NON-NLS-1$  //$NON-NLS-2$
 		try {
-			otherProject.setRawClasspath(ProjectTestSetup.getDefaultClasspath(), null);
+			otherProject.setRawClasspath(pts.getDefaultClasspath(), null);
 
 			IPackageFragmentRoot root= JavaProjectHelper.addSourceContainer(otherProject, "other"); //$NON-NLS-1$
 			IPackageFragment pack= root.createPackageFragment("mylib", true, null); //$NON-NLS-1$
@@ -989,7 +989,8 @@
 	@Test
 	public void externalClassFolder() throws Exception {
 		File classFolder= JavaTestPlugin.getDefault().getFileInPlugin(new Path("testresources/externalClassFolder/"));//$NON-NLS-1$
-		assertTrue("class folder not found", classFolder != null && classFolder.exists());//$NON-NLS-1$
+		assertNotNull("class folder not found", classFolder);//$NON-NLS-1$
+		assertTrue("class folder not found", classFolder.exists());
 		IPackageFragmentRoot externalRoot= JavaProjectHelper.addLibrary(fProject, Path.fromOSString(classFolder.getPath()), null, null);
 
 		try {
diff --git a/org.eclipse.jdt.ui.tests/ui/org/eclipse/jdt/ui/tests/jarexport/PlainJarExportTests.java b/org.eclipse.jdt.ui.tests/ui/org/eclipse/jdt/ui/tests/jarexport/PlainJarExportTests.java
index 4fe92ea..3e8fa96 100644
--- a/org.eclipse.jdt.ui.tests/ui/org/eclipse/jdt/ui/tests/jarexport/PlainJarExportTests.java
+++ b/org.eclipse.jdt.ui.tests/ui/org/eclipse/jdt/ui/tests/jarexport/PlainJarExportTests.java
@@ -78,7 +78,7 @@
 
 	@Before
 	public void setUp() throws Exception {
-		fProject= ProjectTestSetup.getProject();
+		fProject= pts.getProject();
 
 		Map<String, String> options= fProject.getOptions(false);
 		String compliance= JavaCore.VERSION_1_4;
@@ -104,7 +104,7 @@
 
 	@After
 	public void tearDown() throws Exception {
-		JavaProjectHelper.clear(fProject, ProjectTestSetup.getDefaultClasspath());
+		JavaProjectHelper.clear(fProject, pts.getDefaultClasspath());
 	}
 
 	@Test
diff --git a/org.eclipse.jdt.ui.tests/ui/org/eclipse/jdt/ui/tests/packageview/PackageExplorerShowInTests.java b/org.eclipse.jdt.ui.tests/ui/org/eclipse/jdt/ui/tests/packageview/PackageExplorerShowInTests.java
index c0f0562..48a2444 100644
--- a/org.eclipse.jdt.ui.tests/ui/org/eclipse/jdt/ui/tests/packageview/PackageExplorerShowInTests.java
+++ b/org.eclipse.jdt.ui.tests/ui/org/eclipse/jdt/ui/tests/packageview/PackageExplorerShowInTests.java
@@ -64,7 +64,7 @@
 
 	@Before
 	public void setUp() throws Exception {
-		fJProject= ProjectTestSetup.getProject();
+		fJProject= pts.getProject();
 		fPage= PlatformUI.getWorkbench().getActiveWorkbenchWindow().getActivePage();
 		fPackageExplorer= (PackageExplorerPart) fPage.showView(JavaUI.ID_PACKAGES);
 		fPackageExplorer.selectAndReveal(new StructuredSelection());
@@ -72,7 +72,7 @@
 
 	@After
 	public void tearDown() throws Exception {
-		JavaProjectHelper.clear(fJProject, ProjectTestSetup.getDefaultClasspath());
+		JavaProjectHelper.clear(fJProject, pts.getDefaultClasspath());
 		fPage.hideView(fPackageExplorer);
 		fPage= null;
 		fPackageExplorer= null;
@@ -195,7 +195,4 @@
 			editor.getSite().getPage().closeEditor(editor, false);
 		}
 	}
-
-
-
 }
diff --git a/org.eclipse.jdt.ui.tests/ui/org/eclipse/jdt/ui/tests/quickfix/AbstractAnnotateAssistTests.java b/org.eclipse.jdt.ui.tests/ui/org/eclipse/jdt/ui/tests/quickfix/AbstractAnnotateAssistTests.java
index f11dfb1..2e8ac71 100644
--- a/org.eclipse.jdt.ui.tests/ui/org/eclipse/jdt/ui/tests/quickfix/AbstractAnnotateAssistTests.java
+++ b/org.eclipse.jdt.ui.tests/ui/org/eclipse/jdt/ui/tests/quickfix/AbstractAnnotateAssistTests.java
@@ -23,12 +23,6 @@
 import java.util.Arrays;
 import java.util.List;
 
-import org.junit.After;
-import org.junit.runner.RunWith;
-import org.junit.runners.JUnit4;
-
-import org.eclipse.jdt.testplugin.JavaProjectHelper;
-
 import org.eclipse.core.runtime.CoreException;
 import org.eclipse.core.runtime.Path;
 
@@ -50,7 +44,6 @@
 import org.eclipse.jdt.internal.core.ClasspathEntry;
 import org.eclipse.jdt.internal.core.manipulation.util.Strings;
 
-import org.eclipse.jdt.ui.tests.core.rules.ProjectTestSetup;
 import org.eclipse.jdt.ui.tests.quickfix.JarUtil.ClassFileFilter;
 
 import org.eclipse.jdt.internal.ui.javaeditor.JavaEditor;
@@ -58,16 +51,10 @@
 import org.eclipse.jdt.internal.ui.text.correction.ExternalNullAnnotationQuickAssistProcessor;
 import org.eclipse.jdt.internal.ui.text.correction.JavaCorrectionAssistant;
 
-@RunWith(JUnit4.class)
 public abstract class AbstractAnnotateAssistTests extends QuickFixTest {
 
 	protected IJavaProject fJProject1;
 
-	@After
-	public void tearDown() throws Exception {
-		JavaProjectHelper.clear(fJProject1, ProjectTestSetup.getDefaultClasspath());
-	}
-
 	protected void ensureExists(IContainer parent) throws CoreException {
 		if (parent.exists()) return;
 		if (parent.getParent() != null)
diff --git a/org.eclipse.jdt.ui.tests/ui/org/eclipse/jdt/ui/tests/quickfix/AdvancedQuickAssistTest.java b/org.eclipse.jdt.ui.tests/ui/org/eclipse/jdt/ui/tests/quickfix/AdvancedQuickAssistTest.java
index 1af1cd1..7f71149 100644
--- a/org.eclipse.jdt.ui.tests/ui/org/eclipse/jdt/ui/tests/quickfix/AdvancedQuickAssistTest.java
+++ b/org.eclipse.jdt.ui.tests/ui/org/eclipse/jdt/ui/tests/quickfix/AdvancedQuickAssistTest.java
@@ -58,17 +58,14 @@
 import org.eclipse.jdt.internal.ui.text.correction.CorrectionMessages;
 import org.eclipse.jdt.internal.ui.text.correction.QuickTemplateProcessor;
 
-
 @RunWith(JUnit4.class)
 public class AdvancedQuickAssistTest extends QuickFixTest {
-
 	@Rule
-    public ProjectTestSetup projectsetup = new ProjectTestSetup();
+    public ProjectTestSetup projectSetup= new ProjectTestSetup();
 
 	private IJavaProject fJProject1;
 	private IPackageFragmentRoot fSourceFolder;
 
-
 	@Before
 	public void setUp() throws Exception {
 		Hashtable<String, String> options= TestOptions.getDefaultOptions();
@@ -89,14 +86,14 @@
 		corePrefs.setValue(JavaCore.CODEASSIST_FIELD_SUFFIXES, "");
 		corePrefs.setValue(JavaCore.CODEASSIST_STATIC_FIELD_SUFFIXES, "");
 
-		fJProject1= ProjectTestSetup.getProject();
+		fJProject1= projectSetup.getProject();
 
 		fSourceFolder= JavaProjectHelper.addSourceContainer(fJProject1, "src");
 	}
 
 	@After
 	public void tearDown() throws Exception {
-		JavaProjectHelper.clear(fJProject1, ProjectTestSetup.getDefaultClasspath());
+		JavaProjectHelper.clear(fJProject1, projectSetup.getDefaultClasspath());
 	}
 
 	@Test
diff --git a/org.eclipse.jdt.ui.tests/ui/org/eclipse/jdt/ui/tests/quickfix/AdvancedQuickAssistTest1d7.java b/org.eclipse.jdt.ui.tests/ui/org/eclipse/jdt/ui/tests/quickfix/AdvancedQuickAssistTest1d7.java
index 002e833..d370d4a 100644
--- a/org.eclipse.jdt.ui.tests/ui/org/eclipse/jdt/ui/tests/quickfix/AdvancedQuickAssistTest1d7.java
+++ b/org.eclipse.jdt.ui.tests/ui/org/eclipse/jdt/ui/tests/quickfix/AdvancedQuickAssistTest1d7.java
@@ -20,8 +20,6 @@
 import org.junit.Before;
 import org.junit.Rule;
 import org.junit.Test;
-import org.junit.runner.RunWith;
-import org.junit.runners.JUnit4;
 
 import org.eclipse.jdt.testplugin.JavaProjectHelper;
 import org.eclipse.jdt.testplugin.TestOptions;
@@ -52,11 +50,9 @@
 /**
  * Those tests should run on Java Dolphin 1.7 .
  */
-@RunWith(JUnit4.class)
 public class AdvancedQuickAssistTest1d7 extends QuickFixTest {
-
 	@Rule
-    public ProjectTestSetup projectsetup = new Java1d7ProjectTestSetup();
+    public ProjectTestSetup projectSetup= new Java1d7ProjectTestSetup();
 
 	private IJavaProject fJProject1;
 
@@ -82,7 +78,7 @@
 		corePrefs.setValue(JavaCore.CODEASSIST_FIELD_SUFFIXES, "");
 		corePrefs.setValue(JavaCore.CODEASSIST_STATIC_FIELD_SUFFIXES, "");
 
-		fJProject1= Java1d7ProjectTestSetup.getProject();
+		fJProject1= projectSetup.getProject();
 
 		fSourceFolder= JavaProjectHelper.addSourceContainer(fJProject1, "src");
 	}
@@ -90,7 +86,7 @@
 
 	@After
 	public void tearDown() throws Exception {
-		JavaProjectHelper.clear(fJProject1, Java1d7ProjectTestSetup.getDefaultClasspath());
+		JavaProjectHelper.clear(fJProject1, projectSetup.getDefaultClasspath());
 	}
 
 	@Test
diff --git a/org.eclipse.jdt.ui.tests/ui/org/eclipse/jdt/ui/tests/quickfix/AdvancedQuickAssistTest1d8.java b/org.eclipse.jdt.ui.tests/ui/org/eclipse/jdt/ui/tests/quickfix/AdvancedQuickAssistTest1d8.java
index d80bba0..ba805be 100644
--- a/org.eclipse.jdt.ui.tests/ui/org/eclipse/jdt/ui/tests/quickfix/AdvancedQuickAssistTest1d8.java
+++ b/org.eclipse.jdt.ui.tests/ui/org/eclipse/jdt/ui/tests/quickfix/AdvancedQuickAssistTest1d8.java
@@ -20,8 +20,6 @@
 import org.junit.Before;
 import org.junit.Rule;
 import org.junit.Test;
-import org.junit.runner.RunWith;
-import org.junit.runners.JUnit4;
 
 import org.eclipse.jdt.testplugin.JavaProjectHelper;
 import org.eclipse.jdt.testplugin.TestOptions;
@@ -50,10 +48,9 @@
 /**
  * Those tests are made to run on Java Spider 1.8 .
  */
-@RunWith(JUnit4.class)
 public class AdvancedQuickAssistTest1d8 extends QuickFixTest {
 	@Rule
-    public ProjectTestSetup projectsetup = new Java1d8ProjectTestSetup();
+    public ProjectTestSetup projectSetup= new Java1d8ProjectTestSetup();
 
 	private IJavaProject fJProject1;
 
@@ -73,14 +70,14 @@
 
 		StubUtility.setCodeTemplate(CodeTemplateContextType.METHODSTUB_ID, "//TODO\n${body_statement}", null);
 
-		fJProject1= Java1d8ProjectTestSetup.getProject();
+		fJProject1= projectSetup.getProject();
 
 		fSourceFolder= JavaProjectHelper.addSourceContainer(fJProject1, "src");
 	}
 
 	@After
 	public void tearDown() throws Exception {
-		JavaProjectHelper.clear(fJProject1, Java1d8ProjectTestSetup.getDefaultClasspath());
+		JavaProjectHelper.clear(fJProject1, projectSetup.getDefaultClasspath());
 	}
 
 	@Test
diff --git a/org.eclipse.jdt.ui.tests/ui/org/eclipse/jdt/ui/tests/quickfix/AnnotateAssistTest1d5.java b/org.eclipse.jdt.ui.tests/ui/org/eclipse/jdt/ui/tests/quickfix/AnnotateAssistTest1d5.java
index 20324df..b448cd3 100644
--- a/org.eclipse.jdt.ui.tests/ui/org/eclipse/jdt/ui/tests/quickfix/AnnotateAssistTest1d5.java
+++ b/org.eclipse.jdt.ui.tests/ui/org/eclipse/jdt/ui/tests/quickfix/AnnotateAssistTest1d5.java
@@ -21,6 +21,7 @@
 import java.io.ByteArrayInputStream;
 import java.util.List;
 
+import org.junit.After;
 import org.junit.Before;
 import org.junit.Rule;
 import org.junit.Test;
@@ -57,19 +58,22 @@
 @RunWith(JUnit4.class)
 public class AnnotateAssistTest1d5 extends AbstractAnnotateAssistTests {
 	@Rule
-	public ProjectTestSetup projectsetup= new ProjectTestSetup();
+	public ProjectTestSetup projectSetup= new ProjectTestSetup();
 
 	protected static final String ANNOTATION_PATH= "annots";
 
-	protected static final Class<?> THIS= AnnotateAssistTest1d5.class;
-
 	@Before
 	public void setUp() throws Exception {
-		fJProject1= ProjectTestSetup.getProject();
+		fJProject1= projectSetup.getProject();
 		fJProject1.getProject().getFolder(ANNOTATION_PATH).create(true, true, null);
 		fJProject1.setOption(JavaCore.COMPILER_ANNOTATION_NULL_ANALYSIS, JavaCore.ENABLED);
 	}
 
+	@After
+	public void tearDown() throws Exception {
+		JavaProjectHelper.clear(fJProject1, projectSetup.getDefaultClasspath());
+	}
+
 	// === Tests ===
 
 	/**
diff --git a/org.eclipse.jdt.ui.tests/ui/org/eclipse/jdt/ui/tests/quickfix/AnnotateAssistTest1d8.java b/org.eclipse.jdt.ui.tests/ui/org/eclipse/jdt/ui/tests/quickfix/AnnotateAssistTest1d8.java
index 5919289..7902b30 100644
--- a/org.eclipse.jdt.ui.tests/ui/org/eclipse/jdt/ui/tests/quickfix/AnnotateAssistTest1d8.java
+++ b/org.eclipse.jdt.ui.tests/ui/org/eclipse/jdt/ui/tests/quickfix/AnnotateAssistTest1d8.java
@@ -19,11 +19,12 @@
 import java.io.ByteArrayInputStream;
 import java.util.List;
 
+import org.junit.After;
 import org.junit.Before;
 import org.junit.Rule;
 import org.junit.Test;
-import org.junit.runner.RunWith;
-import org.junit.runners.JUnit4;
+
+import org.eclipse.jdt.testplugin.JavaProjectHelper;
 
 import org.eclipse.core.runtime.Path;
 
@@ -45,23 +46,25 @@
 /**
  * Those tests are made to run on Java Spider 1.8 .
  */
-@RunWith(JUnit4.class)
 public class AnnotateAssistTest1d8 extends AbstractAnnotateAssistTests {
 
 	@Rule
-    public ProjectTestSetup projectsetup = new Java1d8ProjectTestSetup();
+    public ProjectTestSetup projectSetup = new Java1d8ProjectTestSetup();
 
 	protected static final String ANNOTATION_PATH= "annots";
 
-	protected static final Class<?> THIS= AnnotateAssistTest1d8.class;
-
 	@Before
 	public void setUp() throws Exception {
-		fJProject1= Java1d8ProjectTestSetup.getProject();
+		fJProject1= projectSetup.getProject();
 		fJProject1.getProject().getFolder(ANNOTATION_PATH).create(true, true, null);
 		fJProject1.setOption(JavaCore.COMPILER_ANNOTATION_NULL_ANALYSIS, JavaCore.ENABLED);
 	}
 
+	@After
+	public void tearDown() throws Exception {
+		JavaProjectHelper.clear(fJProject1, projectSetup.getDefaultClasspath());
+	}
+
 	/**
 	 * Assert two proposals ("@NonNull" and "@Nullable") on a type argument of a parameter.
 	 * The parameterized type already has a @NonNull annotation.
diff --git a/org.eclipse.jdt.ui.tests/ui/org/eclipse/jdt/ui/tests/quickfix/AssistQuickFixTest.java b/org.eclipse.jdt.ui.tests/ui/org/eclipse/jdt/ui/tests/quickfix/AssistQuickFixTest.java
index ad0e1eb..ff039d3 100644
--- a/org.eclipse.jdt.ui.tests/ui/org/eclipse/jdt/ui/tests/quickfix/AssistQuickFixTest.java
+++ b/org.eclipse.jdt.ui.tests/ui/org/eclipse/jdt/ui/tests/quickfix/AssistQuickFixTest.java
@@ -69,7 +69,7 @@
 @RunWith(JUnit4.class)
 public class AssistQuickFixTest extends QuickFixTest {
 	@Rule
-    public ProjectTestSetup projectsetup = new ProjectTestSetup();
+    public ProjectTestSetup projectSetup = new ProjectTestSetup();
 
 	private static final String CHANGE_MODIFIER_TO_FINAL= FixMessages.VariableDeclarationFix_changeModifierOfUnknownToFinal_description;
 
@@ -96,7 +96,7 @@
 		corePrefs.setValue(JavaCore.CODEASSIST_FIELD_SUFFIXES, "");
 		corePrefs.setValue(JavaCore.CODEASSIST_STATIC_FIELD_SUFFIXES, "");
 
-		fJProject1= ProjectTestSetup.getProject();
+		fJProject1= projectSetup.getProject();
 
 		fSourceFolder= JavaProjectHelper.addSourceContainer(fJProject1, "src");
 	}
@@ -104,7 +104,7 @@
 
 	@After
 	public void tearDown() throws Exception {
-		JavaProjectHelper.clear(fJProject1, ProjectTestSetup.getDefaultClasspath());
+		JavaProjectHelper.clear(fJProject1, projectSetup.getDefaultClasspath());
 	}
 
 	@Test
diff --git a/org.eclipse.jdt.ui.tests/ui/org/eclipse/jdt/ui/tests/quickfix/AssistQuickFixTest10.java b/org.eclipse.jdt.ui.tests/ui/org/eclipse/jdt/ui/tests/quickfix/AssistQuickFixTest10.java
index 4e80b6a..62a7032 100644
--- a/org.eclipse.jdt.ui.tests/ui/org/eclipse/jdt/ui/tests/quickfix/AssistQuickFixTest10.java
+++ b/org.eclipse.jdt.ui.tests/ui/org/eclipse/jdt/ui/tests/quickfix/AssistQuickFixTest10.java
@@ -53,7 +53,7 @@
 public class AssistQuickFixTest10 extends QuickFixTest {
 
 	@Rule
-    public ProjectTestSetup projectsetup = new Java10ProjectTestSetup();
+    public ProjectTestSetup projectSetup= new Java10ProjectTestSetup();
 
 	private static final Class<?>[] TYPE_CHANGE_PROPOSAL_TYPE= { TypeChangeCorrectionProposal.class };
 
@@ -89,13 +89,13 @@
 
 		StubUtility.setCodeTemplate(CodeTemplateContextType.METHODSTUB_ID, "//TODO\n${body_statement}", null);
 
-		fJProject1= Java10ProjectTestSetup.getProject();
+		fJProject1= projectSetup.getProject();
 		fSourceFolder= JavaProjectHelper.addSourceContainer(fJProject1, "src");
 	}
 
 	@After
 	public void tearDown() throws Exception {
-		JavaProjectHelper.clear(fJProject1, Java10ProjectTestSetup.getDefaultClasspath());
+		JavaProjectHelper.clear(fJProject1, projectSetup.getDefaultClasspath());
 	}
 
 	@Test
diff --git a/org.eclipse.jdt.ui.tests/ui/org/eclipse/jdt/ui/tests/quickfix/AssistQuickFixTest12.java b/org.eclipse.jdt.ui.tests/ui/org/eclipse/jdt/ui/tests/quickfix/AssistQuickFixTest12.java
index efe6817..f5197a9 100644
--- a/org.eclipse.jdt.ui.tests/ui/org/eclipse/jdt/ui/tests/quickfix/AssistQuickFixTest12.java
+++ b/org.eclipse.jdt.ui.tests/ui/org/eclipse/jdt/ui/tests/quickfix/AssistQuickFixTest12.java
@@ -39,7 +39,7 @@
 public class AssistQuickFixTest12 extends QuickFixTest {
 
 	@Rule
-    public ProjectTestSetup projectsetup = new Java12ProjectTestSetup(true);
+    public ProjectTestSetup projectSetup = new Java12ProjectTestSetup(true);
 
 	private IJavaProject fJProject1;
 
@@ -60,7 +60,7 @@
 	@Test
 	public void testSplitSwitchCaseStatement() throws Exception {
 		fJProject1= JavaProjectHelper.createJavaProject("TestProject1", "bin");
-		fJProject1.setRawClasspath(Java12ProjectTestSetup.getDefaultClasspath(), null);
+		fJProject1.setRawClasspath(projectSetup.getDefaultClasspath(), null);
 		JavaProjectHelper.set12CompilerOptions(fJProject1, true);
 		fSourceFolder= JavaProjectHelper.addSourceContainer(fJProject1, "src");
 
@@ -126,7 +126,7 @@
 	@Test
 	public void testSplitSwitchCaseLabelRuleStatement() throws Exception {
 		fJProject1= JavaProjectHelper.createJavaProject("TestProject1", "bin");
-		fJProject1.setRawClasspath(Java12ProjectTestSetup.getDefaultClasspath(), null);
+		fJProject1.setRawClasspath(projectSetup.getDefaultClasspath(), null);
 		JavaProjectHelper.set12CompilerOptions(fJProject1, true);
 		fSourceFolder= JavaProjectHelper.addSourceContainer(fJProject1, "src");
 
diff --git a/org.eclipse.jdt.ui.tests/ui/org/eclipse/jdt/ui/tests/quickfix/AssistQuickFixTest1d7.java b/org.eclipse.jdt.ui.tests/ui/org/eclipse/jdt/ui/tests/quickfix/AssistQuickFixTest1d7.java
index 6d4a24e..2610f8c 100644
--- a/org.eclipse.jdt.ui.tests/ui/org/eclipse/jdt/ui/tests/quickfix/AssistQuickFixTest1d7.java
+++ b/org.eclipse.jdt.ui.tests/ui/org/eclipse/jdt/ui/tests/quickfix/AssistQuickFixTest1d7.java
@@ -57,7 +57,7 @@
 public class AssistQuickFixTest1d7 extends QuickFixTest {
 
 	@Rule
-    public ProjectTestSetup projectsetup = new Java1d7ProjectTestSetup();
+    public ProjectTestSetup projectSetup = new Java1d7ProjectTestSetup();
 
 	private static final String REMOVE_CATCH_CLAUSE= CorrectionMessages.QuickAssistProcessor_removecatchclause_description;
 	private static final String REPLACE_CATCH_CLAUSE_WITH_THROWS= CorrectionMessages.QuickAssistProcessor_catchclausetothrows_description;
@@ -89,14 +89,14 @@
 		corePrefs.setValue(JavaCore.CODEASSIST_FIELD_SUFFIXES, "");
 		corePrefs.setValue(JavaCore.CODEASSIST_STATIC_FIELD_SUFFIXES, "");
 
-		fJProject1= Java1d7ProjectTestSetup.getProject();
+		fJProject1= projectSetup.getProject();
 
 		fSourceFolder= JavaProjectHelper.addSourceContainer(fJProject1, "src");
 	}
 
 	@After
 	public void tearDown() throws Exception {
-		JavaProjectHelper.clear(fJProject1, Java1d7ProjectTestSetup.getDefaultClasspath());
+		JavaProjectHelper.clear(fJProject1, projectSetup.getDefaultClasspath());
 	}
 
 	@Test
diff --git a/org.eclipse.jdt.ui.tests/ui/org/eclipse/jdt/ui/tests/quickfix/AssistQuickFixTest1d8.java b/org.eclipse.jdt.ui.tests/ui/org/eclipse/jdt/ui/tests/quickfix/AssistQuickFixTest1d8.java
index f9ca20c..de707b0 100644
--- a/org.eclipse.jdt.ui.tests/ui/org/eclipse/jdt/ui/tests/quickfix/AssistQuickFixTest1d8.java
+++ b/org.eclipse.jdt.ui.tests/ui/org/eclipse/jdt/ui/tests/quickfix/AssistQuickFixTest1d8.java
@@ -63,7 +63,7 @@
 @RunWith(JUnit4.class)
 public class AssistQuickFixTest1d8 extends QuickFixTest {
 	@Rule
-    public ProjectTestSetup projectsetup = new Java1d8ProjectTestSetup();
+    public ProjectTestSetup projectSetup = new Java1d8ProjectTestSetup();
 
 	private IJavaProject fJProject1;
 
@@ -96,13 +96,13 @@
 
 		StubUtility.setCodeTemplate(CodeTemplateContextType.METHODSTUB_ID, "//TODO\n${body_statement}", null);
 
-		fJProject1= Java1d8ProjectTestSetup.getProject();
+		fJProject1= projectSetup.getProject();
 		fSourceFolder= JavaProjectHelper.addSourceContainer(fJProject1, "src");
 	}
 
 	@After
 	public void tearDown() throws Exception {
-		JavaProjectHelper.clear(fJProject1, Java1d8ProjectTestSetup.getDefaultClasspath());
+		JavaProjectHelper.clear(fJProject1, projectSetup.getDefaultClasspath());
 	}
 
 	@Test
diff --git a/org.eclipse.jdt.ui.tests/ui/org/eclipse/jdt/ui/tests/quickfix/ChangeNonStaticToStaticTest.java b/org.eclipse.jdt.ui.tests/ui/org/eclipse/jdt/ui/tests/quickfix/ChangeNonStaticToStaticTest.java
index b55ec02..5f7250e 100644
--- a/org.eclipse.jdt.ui.tests/ui/org/eclipse/jdt/ui/tests/quickfix/ChangeNonStaticToStaticTest.java
+++ b/org.eclipse.jdt.ui.tests/ui/org/eclipse/jdt/ui/tests/quickfix/ChangeNonStaticToStaticTest.java
@@ -20,8 +20,6 @@
 import org.junit.Before;
 import org.junit.Rule;
 import org.junit.Test;
-import org.junit.runner.RunWith;
-import org.junit.runners.JUnit4;
 
 import org.eclipse.jdt.testplugin.JavaProjectHelper;
 import org.eclipse.jdt.testplugin.TestOptions;
@@ -56,11 +54,10 @@
 import org.eclipse.jdt.internal.ui.JavaPlugin;
 import org.eclipse.jdt.internal.ui.fix.CodeStyleCleanUp;
 
-@RunWith(JUnit4.class)
 public class ChangeNonStaticToStaticTest extends QuickFixTest {
 
 	@Rule
-    public ProjectTestSetup projectsetup = new ProjectTestSetup();
+    public ProjectTestSetup projectSetup = new ProjectTestSetup();
 
 	private IJavaProject fJProject1;
 	private IPackageFragmentRoot fSourceFolder;
@@ -86,14 +83,14 @@
 		corePrefs.setValue(JavaCore.CODEASSIST_FIELD_SUFFIXES, "");
 		corePrefs.setValue(JavaCore.CODEASSIST_STATIC_FIELD_SUFFIXES, "");
 
-		fJProject1= ProjectTestSetup.getProject();
+		fJProject1= projectSetup.getProject();
 
 		fSourceFolder= JavaProjectHelper.addSourceContainer(fJProject1, "src");
 	}
 
 	@After
 	public void tearDown() throws Exception {
-		JavaProjectHelper.clear(fJProject1, ProjectTestSetup.getDefaultClasspath());
+		JavaProjectHelper.clear(fJProject1, projectSetup.getDefaultClasspath());
 	}
 
 	private void assertRefactoringResultAsExpected(CleanUpRefactoring refactoring, String[] expected) throws CoreException {
diff --git a/org.eclipse.jdt.ui.tests/ui/org/eclipse/jdt/ui/tests/quickfix/CleanUpActionTest.java b/org.eclipse.jdt.ui.tests/ui/org/eclipse/jdt/ui/tests/quickfix/CleanUpActionTest.java
index adf1b29..11cd7fe 100644
--- a/org.eclipse.jdt.ui.tests/ui/org/eclipse/jdt/ui/tests/quickfix/CleanUpActionTest.java
+++ b/org.eclipse.jdt.ui.tests/ui/org/eclipse/jdt/ui/tests/quickfix/CleanUpActionTest.java
@@ -21,15 +21,17 @@
 
 import org.junit.Rule;
 import org.junit.Test;
-import org.junit.runner.RunWith;
-import org.junit.runners.JUnit4;
+
+import org.eclipse.core.runtime.CoreException;
 
 import org.eclipse.jface.viewers.StructuredSelection;
 
 import org.eclipse.ui.IWorkbenchPartSite;
 import org.eclipse.ui.PlatformUI;
 
+import org.eclipse.jdt.core.IClasspathEntry;
 import org.eclipse.jdt.core.ICompilationUnit;
+import org.eclipse.jdt.core.IJavaProject;
 import org.eclipse.jdt.core.IPackageFragment;
 
 import org.eclipse.jdt.internal.corext.fix.CleanUpConstants;
@@ -42,11 +44,20 @@
 /**
  * @since 3.4
  */
-@RunWith(JUnit4.class)
 public class CleanUpActionTest extends CleanUpTestCase {
 
 	@Rule
-    public ProjectTestSetup projectsetup = new ProjectTestSetup();
+    public ProjectTestSetup projectSetup = new ProjectTestSetup();
+
+	@Override
+	protected IJavaProject getProject() {
+		return projectSetup.getProject();
+	}
+
+	@Override
+	protected IClasspathEntry[] getDefaultClasspath() throws CoreException {
+		return projectSetup.getDefaultClasspath();
+	}
 
 	//205600 [clean up] 'Sort members' action uses workspace/project clean up options
 	@Test
diff --git a/org.eclipse.jdt.ui.tests/ui/org/eclipse/jdt/ui/tests/quickfix/CleanUpAnnotationTest.java b/org.eclipse.jdt.ui.tests/ui/org/eclipse/jdt/ui/tests/quickfix/CleanUpAnnotationTest.java
index 5c79c22..8d56c89 100644
--- a/org.eclipse.jdt.ui.tests/ui/org/eclipse/jdt/ui/tests/quickfix/CleanUpAnnotationTest.java
+++ b/org.eclipse.jdt.ui.tests/ui/org/eclipse/jdt/ui/tests/quickfix/CleanUpAnnotationTest.java
@@ -21,8 +21,6 @@
 
 import org.junit.Rule;
 import org.junit.Test;
-import org.junit.runner.RunWith;
-import org.junit.runners.JUnit4;
 
 import org.eclipse.core.runtime.CoreException;
 
@@ -37,7 +35,9 @@
 
 import org.eclipse.ltk.core.refactoring.RefactoringStatus;
 
+import org.eclipse.jdt.core.IClasspathEntry;
 import org.eclipse.jdt.core.ICompilationUnit;
+import org.eclipse.jdt.core.IJavaProject;
 import org.eclipse.jdt.core.IPackageFragment;
 import org.eclipse.jdt.core.JavaCore;
 import org.eclipse.jdt.core.dom.CompilationUnit;
@@ -48,11 +48,20 @@
 import org.eclipse.jdt.ui.tests.core.rules.ProjectTestSetup;
 
 
-@RunWith(JUnit4.class)
 public class CleanUpAnnotationTest extends CleanUpTestCase {
 
 	@Rule
-    public ProjectTestSetup projectsetup = new ProjectTestSetup();
+    public ProjectTestSetup projectSetup = new ProjectTestSetup();
+
+	@Override
+	protected IJavaProject getProject() {
+		return projectSetup.getProject();
+	}
+
+	@Override
+	protected IClasspathEntry[] getDefaultClasspath() throws CoreException {
+		return projectSetup.getDefaultClasspath();
+	}
 
 	private void assertMarker(long markerId, ICompilationUnit unit, int expectedLineNumber, int expectedCharStart, int expectedCharEnd) throws CoreException {
 		IFile file= (IFile)unit.getResource();
diff --git a/org.eclipse.jdt.ui.tests/ui/org/eclipse/jdt/ui/tests/quickfix/CleanUpStressTest.java b/org.eclipse.jdt.ui.tests/ui/org/eclipse/jdt/ui/tests/quickfix/CleanUpStressTest.java
index b522e18..4b3e3ca 100644
--- a/org.eclipse.jdt.ui.tests/ui/org/eclipse/jdt/ui/tests/quickfix/CleanUpStressTest.java
+++ b/org.eclipse.jdt.ui.tests/ui/org/eclipse/jdt/ui/tests/quickfix/CleanUpStressTest.java
@@ -16,29 +16,30 @@
 package org.eclipse.jdt.ui.tests.quickfix;
 
 import static org.junit.Assert.assertEquals;
-import static org.junit.Assert.assertTrue;
+import static org.junit.Assert.assertNotNull;
 
 import java.io.File;
 import java.util.ArrayList;
 import java.util.Hashtable;
 import java.util.List;
 
-import org.junit.Before;
 import org.junit.Rule;
 import org.junit.Test;
-import org.junit.runner.RunWith;
-import org.junit.runners.JUnit4;
 
 import org.eclipse.jdt.testplugin.JavaProjectHelper;
 import org.eclipse.jdt.testplugin.JavaTestPlugin;
 
+import org.eclipse.core.runtime.CoreException;
+
 import org.eclipse.jface.text.BadLocationException;
 import org.eclipse.jface.text.Document;
 import org.eclipse.jface.text.IDocument;
 import org.eclipse.jface.text.IRegion;
 
+import org.eclipse.jdt.core.IClasspathEntry;
 import org.eclipse.jdt.core.ICompilationUnit;
 import org.eclipse.jdt.core.IJavaElement;
+import org.eclipse.jdt.core.IJavaProject;
 import org.eclipse.jdt.core.IPackageFragment;
 import org.eclipse.jdt.core.IPackageFragmentRoot;
 import org.eclipse.jdt.core.JavaModelException;
@@ -48,23 +49,31 @@
 import org.eclipse.jdt.ui.JavaElementLabels;
 import org.eclipse.jdt.ui.tests.core.rules.ProjectTestSetup;
 
-@RunWith(JUnit4.class)
 public class CleanUpStressTest extends CleanUpTestCase {
 
 	@Rule
-    public ProjectTestSetup projectsetup = new ProjectTestSetup();
+    public ProjectTestSetup projectSetup = new ProjectTestSetup();
+
+	@Override
+	protected IJavaProject getProject() {
+		return projectSetup.getProject();
+	}
+
+	@Override
+	protected IClasspathEntry[] getDefaultClasspath() throws CoreException {
+		return projectSetup.getDefaultClasspath();
+	}
 
 	private static final String SRC_CONTAINER= "src";
 
 	protected static IPackageFragmentRoot fJunitSrcRoot;
 
 	@Override
-	@Before
 	public void setUp() throws Exception {
 		super.setUp();
 
 		File junitSrcArchive= JavaTestPlugin.getDefault().getFileInPlugin(JavaProjectHelper.JUNIT_SRC_381);
-		fJunitSrcRoot= JavaProjectHelper.addSourceContainerWithImport(fJProject1, SRC_CONTAINER, junitSrcArchive, JavaProjectHelper.JUNIT_SRC_ENCODING);
+		fJunitSrcRoot= JavaProjectHelper.addSourceContainerWithImport(getProject(), SRC_CONTAINER, junitSrcArchive, JavaProjectHelper.JUNIT_SRC_ENCODING);
 	}
 
 	private void addAllCUs(IJavaElement[] children, List<IJavaElement> result) throws JavaModelException {
@@ -5233,7 +5242,7 @@
 	@Test
 	public void testAllCleanUps() throws Exception {
 		List<IJavaElement> cus= new ArrayList<>();
-		addAllCUs(fJProject1.getChildren(), cus);
+		addAllCUs(getProject().getChildren(), cus);
 
 		enable(CleanUpConstants.MEMBER_ACCESSES_NON_STATIC_FIELD_USE_THIS);
 		enable(CleanUpConstants.MEMBER_ACCESSES_NON_STATIC_FIELD_USE_THIS_ALWAYS);
@@ -5299,7 +5308,7 @@
 
 			String expected= fExpectedChangesAllTests.get(compilationUnitName);
 
-			assertTrue("No expected value in table for " + compilationUnitName, expected != null);
+			assertNotNull("No expected value in table for " + compilationUnitName, expected);
 			assertEquals("Content not as expected for " + compilationUnitName, expected, previewContent);
 		}
 	}
diff --git a/org.eclipse.jdt.ui.tests/ui/org/eclipse/jdt/ui/tests/quickfix/CleanUpTest.java b/org.eclipse.jdt.ui.tests/ui/org/eclipse/jdt/ui/tests/quickfix/CleanUpTest.java
index c6ffe44..f549de6 100644
--- a/org.eclipse.jdt.ui.tests/ui/org/eclipse/jdt/ui/tests/quickfix/CleanUpTest.java
+++ b/org.eclipse.jdt.ui.tests/ui/org/eclipse/jdt/ui/tests/quickfix/CleanUpTest.java
@@ -17,6 +17,7 @@
  *******************************************************************************/
 package org.eclipse.jdt.ui.tests.quickfix;
 
+import static org.junit.Assert.assertEquals;
 import static org.junit.Assert.assertNull;
 import static org.junit.Assert.assertTrue;
 
@@ -26,8 +27,6 @@
 
 import org.junit.Rule;
 import org.junit.Test;
-import org.junit.runner.RunWith;
-import org.junit.runners.JUnit4;
 
 import org.eclipse.jdt.testplugin.JavaProjectHelper;
 import org.eclipse.jdt.testplugin.TestOptions;
@@ -40,6 +39,7 @@
 import org.eclipse.ltk.core.refactoring.RefactoringStatus;
 import org.eclipse.ltk.core.refactoring.RefactoringStatusEntry;
 
+import org.eclipse.jdt.core.IClasspathEntry;
 import org.eclipse.jdt.core.ICompilationUnit;
 import org.eclipse.jdt.core.IJavaProject;
 import org.eclipse.jdt.core.IPackageFragment;
@@ -71,11 +71,22 @@
 import org.eclipse.jdt.internal.ui.fix.UnimplementedCodeCleanUp;
 import org.eclipse.jdt.internal.ui.text.correction.ProblemLocation;
 
-@RunWith(JUnit4.class)
 public class CleanUpTest extends CleanUpTestCase {
 
 	@Rule
-	public ProjectTestSetup projectsetup = new ProjectTestSetup();
+	public ProjectTestSetup projectSetup = new ProjectTestSetup();
+
+	@Override
+	protected IJavaProject getProject() {
+		return projectSetup.getProject();
+	}
+
+	@Override
+	protected IClasspathEntry[] getDefaultClasspath() throws CoreException {
+		return projectSetup.getDefaultClasspath();
+	}
+
+	IJavaProject fJProject1= getProject();
 
 	private class NoChangeRedundantModifiersCleanUp extends RedundantModifiersCleanUp {
 		private NoChangeRedundantModifiersCleanUp(Map<String, String> options) {
@@ -1460,9 +1471,9 @@
 
 		ASTParser parser= ASTParser.newParser(IASTSharedValues.SHARED_AST_LEVEL);
 		parser.setResolveBindings(true);
-		parser.setProject(fJProject1);
+		parser.setProject(getProject());
 
-		Map<String, String> options= RefactoringASTParser.getCompilerOptions(fJProject1);
+		Map<String, String> options= RefactoringASTParser.getCompilerOptions(getProject());
 		options.putAll(cleanUp.getRequirements().getCompilerOptions());
 		parser.setCompilerOptions(options);
 
@@ -1475,7 +1486,7 @@
 		}, null);
 
 		IProblem[] problems= roots[0].getProblems();
-		assertTrue(problems.length == 2);
+		assertEquals(2, problems.length);
 		for (IProblem problem : problems) {
 			ProblemLocation location= new ProblemLocation(problem);
 			assertTrue(cleanUp.canFix(cu1, location));
@@ -4208,7 +4219,7 @@
 	@Test
 	public void testSerialVersion01() throws Exception {
 
-		JavaProjectHelper.set14CompilerOptions(fJProject1);
+		JavaProjectHelper.set14CompilerOptions(getProject());
 
 		try {
 			IPackageFragment pack1= fSourceFolder.createPackageFragment("test1", false, null);
@@ -4218,7 +4229,7 @@
 			buf.append("public class E1 implements Serializable {\n");
 			buf.append("}\n");
 			ICompilationUnit cu1= pack1.createCompilationUnit("E1.java", buf.toString(), false, null);
-			fJProject1.getProject().build(IncrementalProjectBuilder.FULL_BUILD, new NullProgressMonitor());
+			getProject().getProject().build(IncrementalProjectBuilder.FULL_BUILD, new NullProgressMonitor());
 
 			enable(CleanUpConstants.ADD_MISSING_SERIAL_VERSION_ID);
 			enable(CleanUpConstants.ADD_MISSING_SERIAL_VERSION_ID_GENERATED);
@@ -4279,14 +4290,14 @@
 			String expected1= buf.toString();
 			assertRefactoringResultAsExpectedIgnoreHashValue(new ICompilationUnit[] {cu1}, new String[] {expected1});
 		} finally {
-			JavaProjectHelper.set15CompilerOptions(fJProject1);
+			JavaProjectHelper.set15CompilerOptions(getProject());
 		}
 	}
 
 	@Test
 	public void testSerialVersion03() throws Exception {
 
-		JavaProjectHelper.set14CompilerOptions(fJProject1);
+		JavaProjectHelper.set14CompilerOptions(getProject());
 
 		try {
 			IPackageFragment pack1= fSourceFolder.createPackageFragment("test1", false, null);
@@ -4324,14 +4335,14 @@
 
 			assertRefactoringResultAsExpectedIgnoreHashValue(new ICompilationUnit[] {cu1, cu2}, new String[] {expected1, expected2});
 		} finally {
-			JavaProjectHelper.set15CompilerOptions(fJProject1);
+			JavaProjectHelper.set15CompilerOptions(getProject());
 		}
 	}
 
 	@Test
 	public void testSerialVersion04() throws Exception {
 
-		JavaProjectHelper.set14CompilerOptions(fJProject1);
+		JavaProjectHelper.set14CompilerOptions(getProject());
 
 		try {
 			IPackageFragment pack1= fSourceFolder.createPackageFragment("test1", false, null);
@@ -4367,14 +4378,14 @@
 			String expected1= buf.toString();
 			assertRefactoringResultAsExpectedIgnoreHashValue(new ICompilationUnit[] {cu1}, new String[] {expected1});
 		} finally {
-			JavaProjectHelper.set15CompilerOptions(fJProject1);
+			JavaProjectHelper.set15CompilerOptions(getProject());
 		}
 	}
 
 	@Test
 	public void testSerialVersion05() throws Exception {
 
-		JavaProjectHelper.set14CompilerOptions(fJProject1);
+		JavaProjectHelper.set14CompilerOptions(getProject());
 
 		try {
 			IPackageFragment pack1= fSourceFolder.createPackageFragment("test1", false, null);
@@ -4409,7 +4420,7 @@
 			String expected1= buf.toString();
 			assertRefactoringResultAsExpectedIgnoreHashValue(new ICompilationUnit[] {cu1}, new String[] {expected1});
 		} finally {
-			JavaProjectHelper.set15CompilerOptions(fJProject1);
+			JavaProjectHelper.set15CompilerOptions(getProject());
 		}
 	}
 
@@ -5664,7 +5675,7 @@
 	@Test
 	public void testSerialVersionBug139381() throws Exception {
 
-		JavaProjectHelper.set14CompilerOptions(fJProject1);
+		JavaProjectHelper.set14CompilerOptions(getProject());
 
 		try {
 			IPackageFragment pack1= fSourceFolder.createPackageFragment("test1", false, null);
@@ -9498,7 +9509,7 @@
 
 		RefactoringStatus status= assertRefactoringHasNoChange(new ICompilationUnit[] {cu1});
 		RefactoringStatusEntry[] entries= status.getEntries();
-		assertTrue(entries.length == 1);
+		assertEquals(1, entries.length);
 		String message= entries[0].getMessage();
 		assertTrue(message, entries[0].isInfo());
 		assertTrue(message, message.contains("ambiguous"));
@@ -9518,7 +9529,7 @@
 
 		RefactoringStatus status= assertRefactoringHasNoChange(new ICompilationUnit[] {cu1});
 		RefactoringStatusEntry[] entries= status.getEntries();
-		assertTrue(entries.length == 1);
+		assertEquals(1, entries.length);
 		String message= entries[0].getMessage();
 		assertTrue(message, entries[0].isInfo());
 		assertTrue(message, message.contains("parse"));
@@ -9683,7 +9694,7 @@
 
 	@Test
 	public void testCorrectIndetationBug202145_2() throws Exception {
-		IJavaProject project= ProjectTestSetup.getProject();
+		IJavaProject project= getProject();
 		project.setOption(DefaultCodeFormatterConstants.FORMATTER_NEVER_INDENT_LINE_COMMENTS_ON_FIRST_COLUMN, DefaultCodeFormatterConstants.TRUE);
 		try {
 			IPackageFragment pack1= fSourceFolder.createPackageFragment("test1", false, null);
diff --git a/org.eclipse.jdt.ui.tests/ui/org/eclipse/jdt/ui/tests/quickfix/CleanUpTest1d10.java b/org.eclipse.jdt.ui.tests/ui/org/eclipse/jdt/ui/tests/quickfix/CleanUpTest1d10.java
index dbbe163..1b12f83 100644
--- a/org.eclipse.jdt.ui.tests/ui/org/eclipse/jdt/ui/tests/quickfix/CleanUpTest1d10.java
+++ b/org.eclipse.jdt.ui.tests/ui/org/eclipse/jdt/ui/tests/quickfix/CleanUpTest1d10.java
@@ -15,8 +15,6 @@
 
 import org.junit.Rule;
 import org.junit.Test;
-import org.junit.runner.RunWith;
-import org.junit.runners.JUnit4;
 
 import org.eclipse.core.runtime.CoreException;
 
@@ -33,20 +31,19 @@
 /**
  * Tests the cleanup features related to Java 10.
  */
-@RunWith(JUnit4.class)
 public class CleanUpTest1d10 extends CleanUpTestCase {
 
 	@Rule
-    public ProjectTestSetup projectsetup = new Java10ProjectTestSetup();
+    public ProjectTestSetup projectSetup = new Java10ProjectTestSetup();
 
 	@Override
 	protected IJavaProject getProject() {
-		return Java10ProjectTestSetup.getProject();
+		return projectSetup.getProject();
 	}
 
 	@Override
 	protected IClasspathEntry[] getDefaultClasspath() throws CoreException {
-		return Java10ProjectTestSetup.getDefaultClasspath();
+		return projectSetup.getDefaultClasspath();
 	}
 
 	@Test
diff --git a/org.eclipse.jdt.ui.tests/ui/org/eclipse/jdt/ui/tests/quickfix/CleanUpTest1d5.java b/org.eclipse.jdt.ui.tests/ui/org/eclipse/jdt/ui/tests/quickfix/CleanUpTest1d5.java
index c114f92..2638638 100644
--- a/org.eclipse.jdt.ui.tests/ui/org/eclipse/jdt/ui/tests/quickfix/CleanUpTest1d5.java
+++ b/org.eclipse.jdt.ui.tests/ui/org/eclipse/jdt/ui/tests/quickfix/CleanUpTest1d5.java
@@ -15,8 +15,6 @@
 
 import org.junit.Rule;
 import org.junit.Test;
-import org.junit.runner.RunWith;
-import org.junit.runners.JUnit4;
 
 import org.eclipse.core.runtime.CoreException;
 
@@ -37,20 +35,19 @@
 /**
  * Tests the cleanup features related to Java 5.
  */
-@RunWith(JUnit4.class)
 public class CleanUpTest1d5 extends CleanUpTestCase {
 
 	@Rule
-    public ProjectTestSetup projectsetup = new Java1d5ProjectTestSetup();
+    public ProjectTestSetup projectSetup = new Java1d5ProjectTestSetup();
 
 	@Override
 	protected IJavaProject getProject() {
-		return Java1d5ProjectTestSetup.getProject();
+		return projectSetup.getProject();
 	}
 
 	@Override
 	protected IClasspathEntry[] getDefaultClasspath() throws CoreException {
-		return Java1d5ProjectTestSetup.getDefaultClasspath();
+		return projectSetup.getDefaultClasspath();
 	}
 
 	@Test
diff --git a/org.eclipse.jdt.ui.tests/ui/org/eclipse/jdt/ui/tests/quickfix/CleanUpTest1d7.java b/org.eclipse.jdt.ui.tests/ui/org/eclipse/jdt/ui/tests/quickfix/CleanUpTest1d7.java
index e006107..59136c3 100644
--- a/org.eclipse.jdt.ui.tests/ui/org/eclipse/jdt/ui/tests/quickfix/CleanUpTest1d7.java
+++ b/org.eclipse.jdt.ui.tests/ui/org/eclipse/jdt/ui/tests/quickfix/CleanUpTest1d7.java
@@ -31,16 +31,16 @@
 
 public class CleanUpTest1d7 extends CleanUpTestCase {
 	@Rule
-    public ProjectTestSetup projectsetup= new Java1d7ProjectTestSetup();
+    public ProjectTestSetup projectSetup= new Java1d7ProjectTestSetup();
 
 	@Override
 	protected IJavaProject getProject() {
-		return Java1d7ProjectTestSetup.getProject();
+		return projectSetup.getProject();
 	}
 
 	@Override
 	protected IClasspathEntry[] getDefaultClasspath() throws CoreException {
-		return Java1d7ProjectTestSetup.getDefaultClasspath();
+		return projectSetup.getDefaultClasspath();
 	}
 
 	@Test
diff --git a/org.eclipse.jdt.ui.tests/ui/org/eclipse/jdt/ui/tests/quickfix/CleanUpTest1d8.java b/org.eclipse.jdt.ui.tests/ui/org/eclipse/jdt/ui/tests/quickfix/CleanUpTest1d8.java
index 3c11757..742d298 100644
--- a/org.eclipse.jdt.ui.tests/ui/org/eclipse/jdt/ui/tests/quickfix/CleanUpTest1d8.java
+++ b/org.eclipse.jdt.ui.tests/ui/org/eclipse/jdt/ui/tests/quickfix/CleanUpTest1d8.java
@@ -13,11 +13,8 @@
  *******************************************************************************/
 package org.eclipse.jdt.ui.tests.quickfix;
 
-import org.junit.Before;
 import org.junit.Rule;
 import org.junit.Test;
-import org.junit.runner.RunWith;
-import org.junit.runners.JUnit4;
 
 import org.eclipse.core.runtime.CoreException;
 
@@ -34,13 +31,11 @@
 import org.eclipse.jdt.ui.tests.core.rules.Java1d8ProjectTestSetup;
 import org.eclipse.jdt.ui.tests.core.rules.ProjectTestSetup;
 
-@RunWith(JUnit4.class)
 public class CleanUpTest1d8 extends CleanUpTestCase {
 	@Rule
-    public ProjectTestSetup projectsetup= new Java1d8ProjectTestSetup();
+    public ProjectTestSetup projectSetup= new Java1d8ProjectTestSetup();
 
 	@Override
-	@Before
 	public void setUp() throws Exception {
 		super.setUp();
 		StubUtility.setCodeTemplate(CodeTemplateContextType.OVERRIDECOMMENT_ID, "", null);
@@ -48,12 +43,12 @@
 
 	@Override
 	protected IJavaProject getProject() {
-		return Java1d8ProjectTestSetup.getProject();
+		return projectSetup.getProject();
 	}
 
 	@Override
 	protected IClasspathEntry[] getDefaultClasspath() throws CoreException {
-		return Java1d8ProjectTestSetup.getDefaultClasspath();
+		return projectSetup.getDefaultClasspath();
 	}
 
 	@Test
diff --git a/org.eclipse.jdt.ui.tests/ui/org/eclipse/jdt/ui/tests/quickfix/CleanUpTestCase.java b/org.eclipse.jdt.ui.tests/ui/org/eclipse/jdt/ui/tests/quickfix/CleanUpTestCase.java
index 65f7506..336c800 100644
--- a/org.eclipse.jdt.ui.tests/ui/org/eclipse/jdt/ui/tests/quickfix/CleanUpTestCase.java
+++ b/org.eclipse.jdt.ui.tests/ui/org/eclipse/jdt/ui/tests/quickfix/CleanUpTestCase.java
@@ -68,7 +68,6 @@
 import org.eclipse.jdt.ui.PreferenceConstants;
 import org.eclipse.jdt.ui.cleanup.CleanUpOptions;
 import org.eclipse.jdt.ui.cleanup.ICleanUp;
-import org.eclipse.jdt.ui.tests.core.rules.ProjectTestSetup;
 
 import org.eclipse.jdt.internal.ui.JavaPlugin;
 import org.eclipse.jdt.internal.ui.dialogs.StatusInfo;
@@ -78,11 +77,10 @@
 import org.eclipse.jdt.internal.ui.preferences.formatter.ProfileManager.Profile;
 import org.eclipse.jdt.internal.ui.preferences.formatter.ProfileStore;
 
-public class CleanUpTestCase extends QuickFixTest {
+public abstract class CleanUpTestCase extends QuickFixTest {
 	protected static final String FIELD_COMMENT= "/* Test */";
 
 	protected IPackageFragmentRoot fSourceFolder;
-	protected IJavaProject fJProject1;
 
 	private CustomProfile fProfile;
 
@@ -108,9 +106,7 @@
 		corePrefs.setValue(JavaCore.CODEASSIST_FIELD_SUFFIXES, "");
 		corePrefs.setValue(JavaCore.CODEASSIST_STATIC_FIELD_SUFFIXES, "");
 
-		fJProject1= getProject();
-
-		fSourceFolder= JavaProjectHelper.addSourceContainer(fJProject1, "src");
+		fSourceFolder= JavaProjectHelper.addSourceContainer(getProject(), "src");
 
 		Map<String, String> settings= new Hashtable<>();
 		fProfile= new ProfileManager.CustomProfile("testProfile", settings, CleanUpProfileVersioner.CURRENT_VERSION, CleanUpProfileVersioner.PROFILE_KIND);
@@ -122,20 +118,15 @@
 
 	@After
 	public void tearDown() throws Exception {
-		JavaProjectHelper.clear(fJProject1, getDefaultClasspath());
+		JavaProjectHelper.clear(getProject(), getDefaultClasspath());
 		disableAll();
-		fJProject1= null;
 		fSourceFolder= null;
 		fProfile= null;
 	}
 
-	protected IJavaProject getProject() {
-		return ProjectTestSetup.getProject();
-	}
+	protected abstract IJavaProject getProject();
 
-	protected IClasspathEntry[] getDefaultClasspath() throws CoreException {
-		return ProjectTestSetup.getDefaultClasspath();
-	}
+	protected abstract IClasspathEntry[] getDefaultClasspath() throws CoreException;
 
 	private void disableAll() throws CoreException {
 		Map<String, String> settings= fProfile.getSettings();
diff --git a/org.eclipse.jdt.ui.tests/ui/org/eclipse/jdt/ui/tests/quickfix/ContributedQuickFixTest.java b/org.eclipse.jdt.ui.tests/ui/org/eclipse/jdt/ui/tests/quickfix/ContributedQuickFixTest.java
index 2d9c935..9dc4ed1 100644
--- a/org.eclipse.jdt.ui.tests/ui/org/eclipse/jdt/ui/tests/quickfix/ContributedQuickFixTest.java
+++ b/org.eclipse.jdt.ui.tests/ui/org/eclipse/jdt/ui/tests/quickfix/ContributedQuickFixTest.java
@@ -22,8 +22,6 @@
 import org.junit.Before;
 import org.junit.Rule;
 import org.junit.Test;
-import org.junit.runner.RunWith;
-import org.junit.runners.JUnit4;
 
 import org.eclipse.jdt.testplugin.JavaProjectHelper;
 import org.eclipse.jdt.testplugin.TestOptions;
@@ -42,11 +40,10 @@
 
 import org.eclipse.jdt.internal.ui.text.correction.AssistContext;
 
-@RunWith(JUnit4.class)
 public class ContributedQuickFixTest extends QuickFixTest {
 
 	@Rule
-    public ProjectTestSetup projectsetup = new ProjectTestSetup();
+    public ProjectTestSetup projectSetup = new ProjectTestSetup();
 
 	private IJavaProject fJProject1;
 	private IPackageFragmentRoot fSourceFolder;
@@ -59,15 +56,14 @@
 
 		JavaCore.setOptions(options);
 
-		fJProject1= ProjectTestSetup.getProject();
+		fJProject1= projectSetup.getProject();
 
 		fSourceFolder= JavaProjectHelper.addSourceContainer(fJProject1, "src");
 	}
 
-
 	@After
 	public void tearDown() throws Exception {
-		JavaProjectHelper.clear(fJProject1, ProjectTestSetup.getDefaultClasspath());
+		JavaProjectHelper.clear(fJProject1, projectSetup.getDefaultClasspath());
 	}
 
 	@Test
diff --git a/org.eclipse.jdt.ui.tests/ui/org/eclipse/jdt/ui/tests/quickfix/ConvertForLoopQuickFixTest.java b/org.eclipse.jdt.ui.tests/ui/org/eclipse/jdt/ui/tests/quickfix/ConvertForLoopQuickFixTest.java
index 458f791..b8e2669 100644
--- a/org.eclipse.jdt.ui.tests/ui/org/eclipse/jdt/ui/tests/quickfix/ConvertForLoopQuickFixTest.java
+++ b/org.eclipse.jdt.ui.tests/ui/org/eclipse/jdt/ui/tests/quickfix/ConvertForLoopQuickFixTest.java
@@ -25,8 +25,6 @@
 import org.junit.Before;
 import org.junit.Rule;
 import org.junit.Test;
-import org.junit.runner.RunWith;
-import org.junit.runners.JUnit4;
 
 import org.eclipse.jdt.testplugin.JavaProjectHelper;
 import org.eclipse.jdt.testplugin.TestOptions;
@@ -59,11 +57,10 @@
 import org.eclipse.jdt.internal.ui.text.correction.QuickAssistProcessor;
 import org.eclipse.jdt.internal.ui.text.correction.proposals.FixCorrectionProposal;
 
-@RunWith(JUnit4.class)
 public class ConvertForLoopQuickFixTest extends QuickFixTest {
 
 	@Rule
-	public ProjectTestSetup projectsetup= new ProjectTestSetup();
+	public ProjectTestSetup projectSetup= new ProjectTestSetup();
 
 	private IJavaProject fJProject1;
 	IPackageFragmentRoot fSourceFolder;
@@ -79,7 +76,7 @@
 		IPreferenceStore store= JavaPlugin.getDefault().getPreferenceStore();
 		store.setValue(PreferenceConstants.CODEGEN_ADD_COMMENTS, false);
 
-		fJProject1= ProjectTestSetup.getProject();
+		fJProject1= projectSetup.getProject();
 
 		fSourceFolder= JavaProjectHelper.addSourceContainer(fJProject1, "src");
 		fConvertLoopProposal= null;
@@ -87,7 +84,7 @@
 
 	@After
 	public void tearDown() throws Exception {
-		JavaProjectHelper.clear(fJProject1, ProjectTestSetup.getDefaultClasspath());
+		JavaProjectHelper.clear(fJProject1, projectSetup.getDefaultClasspath());
 		fJProject1= null;
 		fSourceFolder= null;
 		fConvertLoopProposal= null;
diff --git a/org.eclipse.jdt.ui.tests/ui/org/eclipse/jdt/ui/tests/quickfix/ConvertIterableLoopQuickFixTest.java b/org.eclipse.jdt.ui.tests/ui/org/eclipse/jdt/ui/tests/quickfix/ConvertIterableLoopQuickFixTest.java
index a249cea..1ae3b38 100644
--- a/org.eclipse.jdt.ui.tests/ui/org/eclipse/jdt/ui/tests/quickfix/ConvertIterableLoopQuickFixTest.java
+++ b/org.eclipse.jdt.ui.tests/ui/org/eclipse/jdt/ui/tests/quickfix/ConvertIterableLoopQuickFixTest.java
@@ -26,8 +26,6 @@
 import org.junit.Ignore;
 import org.junit.Rule;
 import org.junit.Test;
-import org.junit.runner.RunWith;
-import org.junit.runners.JUnit4;
 
 import org.eclipse.jdt.testplugin.JavaProjectHelper;
 import org.eclipse.jdt.testplugin.TestOptions;
@@ -52,11 +50,10 @@
 import org.eclipse.jdt.internal.ui.text.correction.QuickAssistProcessor;
 import org.eclipse.jdt.internal.ui.text.correction.proposals.FixCorrectionProposal;
 
-@RunWith(JUnit4.class)
 public final class ConvertIterableLoopQuickFixTest extends QuickFixTest {
 
 	@Rule
-    public ProjectTestSetup projectsetup = new ProjectTestSetup();
+    public ProjectTestSetup projectSetup= new ProjectTestSetup();
 
 	private FixCorrectionProposal fConvertLoopProposal;
 
@@ -86,7 +83,7 @@
 		IPreferenceStore store= JavaPlugin.getDefault().getPreferenceStore();
 		store.setValue(PreferenceConstants.CODEGEN_ADD_COMMENTS, false);
 
-		fProject= ProjectTestSetup.getProject();
+		fProject= projectSetup.getProject();
 
 		fSourceFolder= JavaProjectHelper.addSourceContainer(fProject, "src");
 		fConvertLoopProposal= null;
@@ -94,7 +91,7 @@
 
 	@After
 	public void tearDown() throws Exception {
-		JavaProjectHelper.clear(fProject, ProjectTestSetup.getDefaultClasspath());
+		JavaProjectHelper.clear(fProject, projectSetup.getDefaultClasspath());
 		fConvertLoopProposal= null;
 		fProject= null;
 		fSourceFolder= null;
diff --git a/org.eclipse.jdt.ui.tests/ui/org/eclipse/jdt/ui/tests/quickfix/ConvertIterableLoopQuickFixTest1d7.java b/org.eclipse.jdt.ui.tests/ui/org/eclipse/jdt/ui/tests/quickfix/ConvertIterableLoopQuickFixTest1d7.java
index add5ea5..16fc712 100644
--- a/org.eclipse.jdt.ui.tests/ui/org/eclipse/jdt/ui/tests/quickfix/ConvertIterableLoopQuickFixTest1d7.java
+++ b/org.eclipse.jdt.ui.tests/ui/org/eclipse/jdt/ui/tests/quickfix/ConvertIterableLoopQuickFixTest1d7.java
@@ -48,7 +48,7 @@
 public final class ConvertIterableLoopQuickFixTest1d7 extends QuickFixTest {
 
 	@Rule
-	public ProjectTestSetup projectsetup = new Java1d7ProjectTestSetup();
+	public ProjectTestSetup projectSetup = new Java1d7ProjectTestSetup();
 
 	private FixCorrectionProposal fConvertLoopProposal;
 
@@ -78,7 +78,7 @@
 		IPreferenceStore store= JavaPlugin.getDefault().getPreferenceStore();
 		store.setValue(PreferenceConstants.CODEGEN_ADD_COMMENTS, false);
 
-		fProject= Java1d7ProjectTestSetup.getProject();
+		fProject= projectSetup.getProject();
 
 		fSourceFolder= JavaProjectHelper.addSourceContainer(fProject, "src");
 		fConvertLoopProposal= null;
@@ -86,7 +86,7 @@
 
 	@After
 	public void tearDown() throws Exception {
-		JavaProjectHelper.clear(fProject, ProjectTestSetup.getDefaultClasspath());
+		JavaProjectHelper.clear(fProject, projectSetup.getDefaultClasspath());
 	}
 
 	@Test
diff --git a/org.eclipse.jdt.ui.tests/ui/org/eclipse/jdt/ui/tests/quickfix/GetterSetterQuickFixTest.java b/org.eclipse.jdt.ui.tests/ui/org/eclipse/jdt/ui/tests/quickfix/GetterSetterQuickFixTest.java
index 444cadc..aa41f44 100644
--- a/org.eclipse.jdt.ui.tests/ui/org/eclipse/jdt/ui/tests/quickfix/GetterSetterQuickFixTest.java
+++ b/org.eclipse.jdt.ui.tests/ui/org/eclipse/jdt/ui/tests/quickfix/GetterSetterQuickFixTest.java
@@ -20,8 +20,6 @@
 import org.junit.Before;
 import org.junit.Rule;
 import org.junit.Test;
-import org.junit.runner.RunWith;
-import org.junit.runners.JUnit4;
 
 import org.eclipse.jdt.testplugin.JavaProjectHelper;
 import org.eclipse.jdt.testplugin.TestOptions;
@@ -45,11 +43,10 @@
 
 import org.eclipse.jdt.internal.ui.JavaPlugin;
 
-@RunWith(JUnit4.class)
 public class GetterSetterQuickFixTest extends QuickFixTest {
 
 	@Rule
-    public ProjectTestSetup projectsetup = new ProjectTestSetup();
+    public ProjectTestSetup projectSetup= new ProjectTestSetup();
 
 	private IJavaProject fJProject1;
 	private IPackageFragmentRoot fSourceFolder;
@@ -66,7 +63,7 @@
 		IPreferenceStore store= JavaPlugin.getDefault().getPreferenceStore();
 		store.setValue(PreferenceConstants.CODEGEN_ADD_COMMENTS, false);
 
-		fJProject1= ProjectTestSetup.getProject();
+		fJProject1= projectSetup.getProject();
 
 		StubUtility.setCodeTemplate(CodeTemplateContextType.METHODSTUB_ID, "", null);
 
@@ -76,7 +73,7 @@
 
 	@After
 	public void tearDown() throws Exception {
-		JavaProjectHelper.clear(fJProject1, ProjectTestSetup.getDefaultClasspath());
+		JavaProjectHelper.clear(fJProject1, projectSetup.getDefaultClasspath());
 	}
 
 	@Test
diff --git a/org.eclipse.jdt.ui.tests/ui/org/eclipse/jdt/ui/tests/quickfix/JavadocQuickFixTest.java b/org.eclipse.jdt.ui.tests/ui/org/eclipse/jdt/ui/tests/quickfix/JavadocQuickFixTest.java
index 1829cfc..d0c78a5 100644
--- a/org.eclipse.jdt.ui.tests/ui/org/eclipse/jdt/ui/tests/quickfix/JavadocQuickFixTest.java
+++ b/org.eclipse.jdt.ui.tests/ui/org/eclipse/jdt/ui/tests/quickfix/JavadocQuickFixTest.java
@@ -22,8 +22,6 @@
 import org.junit.Before;
 import org.junit.Rule;
 import org.junit.Test;
-import org.junit.runner.RunWith;
-import org.junit.runners.JUnit4;
 
 import org.eclipse.jdt.testplugin.JavaProjectHelper;
 import org.eclipse.jdt.testplugin.TestOptions;
@@ -45,11 +43,10 @@
 
 import org.eclipse.jdt.internal.ui.text.correction.CorrectionMessages;
 
-@RunWith(JUnit4.class)
 public class JavadocQuickFixTest extends QuickFixTest {
 
 	@Rule
-    public ProjectTestSetup projectsetup = new ProjectTestSetup();
+    public ProjectTestSetup projectSetup = new ProjectTestSetup();
 
 	private IJavaProject fJProject1;
 	private IPackageFragmentRoot fSourceFolder;
@@ -97,7 +94,7 @@
 		comment.append(" */");
 		StubUtility.setCodeTemplate(CodeTemplateContextType.DELEGATECOMMENT_ID, comment.toString(), null);
 
-		fJProject1= ProjectTestSetup.getProject();
+		fJProject1= projectSetup.getProject();
 
 		fSourceFolder= JavaProjectHelper.addSourceContainer(fJProject1, "src");
 	}
@@ -105,7 +102,7 @@
 
 	@After
 	public void tearDown() throws Exception {
-		JavaProjectHelper.clear(fJProject1, ProjectTestSetup.getDefaultClasspath());
+		JavaProjectHelper.clear(fJProject1, projectSetup.getDefaultClasspath());
 	}
 
 
diff --git a/org.eclipse.jdt.ui.tests/ui/org/eclipse/jdt/ui/tests/quickfix/JavadocQuickFixTest9.java b/org.eclipse.jdt.ui.tests/ui/org/eclipse/jdt/ui/tests/quickfix/JavadocQuickFixTest9.java
index ff88329..4e9b4af 100644
--- a/org.eclipse.jdt.ui.tests/ui/org/eclipse/jdt/ui/tests/quickfix/JavadocQuickFixTest9.java
+++ b/org.eclipse.jdt.ui.tests/ui/org/eclipse/jdt/ui/tests/quickfix/JavadocQuickFixTest9.java
@@ -21,8 +21,6 @@
 import org.junit.Before;
 import org.junit.Rule;
 import org.junit.Test;
-import org.junit.runner.RunWith;
-import org.junit.runners.JUnit4;
 
 import org.eclipse.jdt.testplugin.JavaProjectHelper;
 import org.eclipse.jdt.testplugin.TestOptions;
@@ -43,11 +41,10 @@
 import org.eclipse.jdt.ui.text.java.IJavaCompletionProposal;
 import org.eclipse.jdt.ui.text.java.correction.CUCorrectionProposal;
 
-@RunWith(JUnit4.class)
 public class JavadocQuickFixTest9 extends QuickFixTest {
 
 	@Rule
-    public ProjectTestSetup projectsetup = new Java9ProjectTestSetup();
+    public ProjectTestSetup projectSetup = new Java9ProjectTestSetup();
 
 	private IJavaProject fJProject1;
 
@@ -105,14 +102,14 @@
 
 		fJProject1= JavaProjectHelper.createJavaProject("TestProject1", "bin");
 		JavaProjectHelper.set9CompilerOptions(fJProject1);
-		JavaProjectHelper.addRequiredModularProject(fJProject1, Java9ProjectTestSetup.getProject());
+		JavaProjectHelper.addRequiredModularProject(fJProject1, projectSetup.getProject());
 
 		fSourceFolder= JavaProjectHelper.addSourceContainer(fJProject1, "src");
 	}
 
 	@After
 	public void tearDown() throws Exception {
-		JavaProjectHelper.clear(fJProject1, ProjectTestSetup.getDefaultClasspath());
+		JavaProjectHelper.clear(fJProject1, projectSetup.getDefaultClasspath());
 	}
 
 	@Test
diff --git a/org.eclipse.jdt.ui.tests/ui/org/eclipse/jdt/ui/tests/quickfix/JavadocQuickFixTestPreview.java b/org.eclipse.jdt.ui.tests/ui/org/eclipse/jdt/ui/tests/quickfix/JavadocQuickFixTestPreview.java
index 547ab71..a990ca6 100644
--- a/org.eclipse.jdt.ui.tests/ui/org/eclipse/jdt/ui/tests/quickfix/JavadocQuickFixTestPreview.java
+++ b/org.eclipse.jdt.ui.tests/ui/org/eclipse/jdt/ui/tests/quickfix/JavadocQuickFixTestPreview.java
@@ -47,7 +47,7 @@
 public class JavadocQuickFixTestPreview extends QuickFixTest {
 
 	@Rule
-    public ProjectTestSetup projectsetup = new Java14ProjectTestSetup(true);
+    public ProjectTestSetup projectSetup = new Java14ProjectTestSetup(true);
 
 	private IJavaProject fJProject1;
 
@@ -77,14 +77,14 @@
 
 		fJProject1= JavaProjectHelper.createJavaProject("TestProject1", "bin");
 		JavaProjectHelper.set14CompilerOptions(fJProject1, true);
-		JavaProjectHelper.addRequiredModularProject(fJProject1, Java14ProjectTestSetup.getProject());
+		JavaProjectHelper.addRequiredModularProject(fJProject1, projectSetup.getProject());
 
 		fSourceFolder= JavaProjectHelper.addSourceContainer(fJProject1, "src");
 	}
 
 	@After
 	public void tearDown() throws Exception {
-		JavaProjectHelper.clear(fJProject1, ProjectTestSetup.getDefaultClasspath());
+		JavaProjectHelper.clear(fJProject1, projectSetup.getDefaultClasspath());
 	}
 
 	@Test
diff --git a/org.eclipse.jdt.ui.tests/ui/org/eclipse/jdt/ui/tests/quickfix/LocalCorrectionsQuickFixTest.java b/org.eclipse.jdt.ui.tests/ui/org/eclipse/jdt/ui/tests/quickfix/LocalCorrectionsQuickFixTest.java
index 854a904..22c4d27 100644
--- a/org.eclipse.jdt.ui.tests/ui/org/eclipse/jdt/ui/tests/quickfix/LocalCorrectionsQuickFixTest.java
+++ b/org.eclipse.jdt.ui.tests/ui/org/eclipse/jdt/ui/tests/quickfix/LocalCorrectionsQuickFixTest.java
@@ -72,7 +72,7 @@
 public class LocalCorrectionsQuickFixTest extends QuickFixTest {
 
 	@Rule
-    public ProjectTestSetup projectsetup = new ProjectTestSetup();
+	public ProjectTestSetup projectSetup= new ProjectTestSetup();
 
 	/**
 	 * Bug 434188: [quick fix] shows sign of quick fix, but says no suggestions available.
@@ -101,18 +101,16 @@
 		StubUtility.setCodeTemplate(CodeTemplateContextType.CONSTRUCTORSTUB_ID, "", null);
 		StubUtility.setCodeTemplate(CodeTemplateContextType.METHODSTUB_ID, "", null);
 
-		fJProject1= ProjectTestSetup.getProject();
+		fJProject1= projectSetup.getProject();
 
 		fSourceFolder= JavaProjectHelper.addSourceContainer(fJProject1, "src");
 	}
 
-
 	@After
 	public void tearDown() throws Exception {
-		JavaProjectHelper.clear(fJProject1, ProjectTestSetup.getDefaultClasspath());
+		JavaProjectHelper.clear(fJProject1, projectSetup.getDefaultClasspath());
 	}
 
-
 	@Test
 	public void testFieldAccessToStatic() throws Exception {
 		IPackageFragment pack1= fSourceFolder.createPackageFragment("test1", false, null);
@@ -12151,7 +12149,7 @@
 
 	@Test
 	public void testConvertLambdaToAnonymous() throws Exception {
-		assertTrue("error should not appear in 1.8 or higher", !JavaModelUtil.is18OrHigher(fJProject1));
+		assertFalse("error should not appear in 1.8 or higher", JavaModelUtil.is18OrHigher(fJProject1));
 
 		IPackageFragment pack1= fSourceFolder.createPackageFragment("p", false, null);
 		StringBuffer buf= new StringBuffer();
diff --git a/org.eclipse.jdt.ui.tests/ui/org/eclipse/jdt/ui/tests/quickfix/LocalCorrectionsQuickFixTest1d7.java b/org.eclipse.jdt.ui.tests/ui/org/eclipse/jdt/ui/tests/quickfix/LocalCorrectionsQuickFixTest1d7.java
index d9fd7bb..0d3275e 100644
--- a/org.eclipse.jdt.ui.tests/ui/org/eclipse/jdt/ui/tests/quickfix/LocalCorrectionsQuickFixTest1d7.java
+++ b/org.eclipse.jdt.ui.tests/ui/org/eclipse/jdt/ui/tests/quickfix/LocalCorrectionsQuickFixTest1d7.java
@@ -20,8 +20,6 @@
 import org.junit.Before;
 import org.junit.Rule;
 import org.junit.Test;
-import org.junit.runner.RunWith;
-import org.junit.runners.JUnit4;
 
 import org.eclipse.jdt.testplugin.JavaProjectHelper;
 import org.eclipse.jdt.testplugin.TestOptions;
@@ -50,11 +48,10 @@
 /**
  * Those tests should run on Java Dolphin 1.7 .
  */
-@RunWith(JUnit4.class)
 public class LocalCorrectionsQuickFixTest1d7 extends QuickFixTest {
 
 	@Rule
-    public ProjectTestSetup projectsetup = new Java1d7ProjectTestSetup();
+    public ProjectTestSetup projectSetup= new Java1d7ProjectTestSetup();
 
 	private IJavaProject fJProject1;
 
@@ -80,7 +77,7 @@
 		StubUtility.setCodeTemplate(CodeTemplateContextType.CONSTRUCTORSTUB_ID, "", null);
 		StubUtility.setCodeTemplate(CodeTemplateContextType.METHODSTUB_ID, "", null);
 
-		fJProject1= Java1d7ProjectTestSetup.getProject();
+		fJProject1= projectSetup.getProject();
 
 		fSourceFolder= JavaProjectHelper.addSourceContainer(fJProject1, "src");
 	}
@@ -88,7 +85,7 @@
 
 	@After
 	public void tearDown() throws Exception {
-		JavaProjectHelper.clear(fJProject1, Java1d7ProjectTestSetup.getDefaultClasspath());
+		JavaProjectHelper.clear(fJProject1, projectSetup.getDefaultClasspath());
 	}
 
 	@Test
diff --git a/org.eclipse.jdt.ui.tests/ui/org/eclipse/jdt/ui/tests/quickfix/LocalCorrectionsQuickFixTest1d8.java b/org.eclipse.jdt.ui.tests/ui/org/eclipse/jdt/ui/tests/quickfix/LocalCorrectionsQuickFixTest1d8.java
index 0a147dc..bda34b0 100644
--- a/org.eclipse.jdt.ui.tests/ui/org/eclipse/jdt/ui/tests/quickfix/LocalCorrectionsQuickFixTest1d8.java
+++ b/org.eclipse.jdt.ui.tests/ui/org/eclipse/jdt/ui/tests/quickfix/LocalCorrectionsQuickFixTest1d8.java
@@ -55,7 +55,7 @@
 public class LocalCorrectionsQuickFixTest1d8 extends QuickFixTest {
 
 	@Rule
-    public ProjectTestSetup projectsetup = new Java1d8ProjectTestSetup();
+    public ProjectTestSetup projectSetup= new Java1d8ProjectTestSetup();
 
 	private IJavaProject fJProject1;
 
@@ -81,15 +81,14 @@
 		StubUtility.setCodeTemplate(CodeTemplateContextType.CONSTRUCTORSTUB_ID, "", null);
 		StubUtility.setCodeTemplate(CodeTemplateContextType.METHODSTUB_ID, "", null);
 
-		fJProject1= Java1d8ProjectTestSetup.getProject();
+		fJProject1= projectSetup.getProject();
 
 		fSourceFolder= JavaProjectHelper.addSourceContainer(fJProject1, "src");
 	}
 
-
 	@After
 	public void tearDown() throws Exception {
-		JavaProjectHelper.clear(fJProject1, Java1d8ProjectTestSetup.getDefaultClasspath());
+		JavaProjectHelper.clear(fJProject1, projectSetup.getDefaultClasspath());
 	}
 
 	@Test
diff --git a/org.eclipse.jdt.ui.tests/ui/org/eclipse/jdt/ui/tests/quickfix/MarkerResolutionTest.java b/org.eclipse.jdt.ui.tests/ui/org/eclipse/jdt/ui/tests/quickfix/MarkerResolutionTest.java
index 3ff6398..f7a3bc2 100644
--- a/org.eclipse.jdt.ui.tests/ui/org/eclipse/jdt/ui/tests/quickfix/MarkerResolutionTest.java
+++ b/org.eclipse.jdt.ui.tests/ui/org/eclipse/jdt/ui/tests/quickfix/MarkerResolutionTest.java
@@ -63,7 +63,7 @@
 public class MarkerResolutionTest extends QuickFixTest {
 
 	@Rule
-    public ProjectTestSetup projectsetup = new ProjectTestSetup();
+    public ProjectTestSetup projectSetup = new ProjectTestSetup();
 
 	private static final class TextViewerContext implements IQuickAssistInvocationContext {
 
@@ -116,18 +116,16 @@
 		IPreferenceStore store= JavaPlugin.getDefault().getPreferenceStore();
 		store.setValue(PreferenceConstants.CODEGEN_ADD_COMMENTS, false);
 
-		fJProject1= ProjectTestSetup.getProject();
+		fJProject1= projectSetup.getProject();
 
 		fSourceFolder= JavaProjectHelper.addSourceContainer(fJProject1, "src");
 	}
 
-
 	@After
 	public void tearDown() throws Exception {
-		JavaProjectHelper.clear(fJProject1, ProjectTestSetup.getDefaultClasspath());
+		JavaProjectHelper.clear(fJProject1, projectSetup.getDefaultClasspath());
 	}
 
-
 	private IMarker createMarker(ICompilationUnit cu, int line, int offset, int len) throws CoreException {
 		IFile file= (IFile) cu.getResource();
 		IMarker marker= file.createMarker(AddTestMarkersAction.MARKER_TYPE);
diff --git a/org.eclipse.jdt.ui.tests/ui/org/eclipse/jdt/ui/tests/quickfix/ModifierCorrectionsQuickFixTest.java b/org.eclipse.jdt.ui.tests/ui/org/eclipse/jdt/ui/tests/quickfix/ModifierCorrectionsQuickFixTest.java
index addc7d7..d282049 100644
--- a/org.eclipse.jdt.ui.tests/ui/org/eclipse/jdt/ui/tests/quickfix/ModifierCorrectionsQuickFixTest.java
+++ b/org.eclipse.jdt.ui.tests/ui/org/eclipse/jdt/ui/tests/quickfix/ModifierCorrectionsQuickFixTest.java
@@ -60,7 +60,7 @@
 public class ModifierCorrectionsQuickFixTest extends QuickFixTest {
 
 	@Rule
-    public ProjectTestSetup projectsetup = new ProjectTestSetup();
+    public ProjectTestSetup projectSetup= new ProjectTestSetup();
 
 	private IJavaProject fJProject1;
 	private IPackageFragmentRoot fSourceFolder;
@@ -80,7 +80,7 @@
 		IPreferenceStore store= JavaPlugin.getDefault().getPreferenceStore();
 		store.setValue(PreferenceConstants.CODEGEN_ADD_COMMENTS, false);
 
-		fJProject1= ProjectTestSetup.getProject();
+		fJProject1= projectSetup.getProject();
 
 		StubUtility.setCodeTemplate(CodeTemplateContextType.METHODSTUB_ID, "", null);
 		StubUtility.setCodeTemplate(CodeTemplateContextType.CONSTRUCTORSTUB_ID, "", null);
@@ -88,10 +88,9 @@
 		fSourceFolder= JavaProjectHelper.addSourceContainer(fJProject1, "src");
 	}
 
-
 	@After
 	public void tearDown() throws Exception {
-		JavaProjectHelper.clear(fJProject1, ProjectTestSetup.getDefaultClasspath());
+		JavaProjectHelper.clear(fJProject1, projectSetup.getDefaultClasspath());
 	}
 
 	@Test
diff --git a/org.eclipse.jdt.ui.tests/ui/org/eclipse/jdt/ui/tests/quickfix/ModifierCorrectionsQuickFixTest1d7.java b/org.eclipse.jdt.ui.tests/ui/org/eclipse/jdt/ui/tests/quickfix/ModifierCorrectionsQuickFixTest1d7.java
index a4531f3..470bad0 100644
--- a/org.eclipse.jdt.ui.tests/ui/org/eclipse/jdt/ui/tests/quickfix/ModifierCorrectionsQuickFixTest1d7.java
+++ b/org.eclipse.jdt.ui.tests/ui/org/eclipse/jdt/ui/tests/quickfix/ModifierCorrectionsQuickFixTest1d7.java
@@ -54,7 +54,7 @@
 public class ModifierCorrectionsQuickFixTest1d7 extends QuickFixTest {
 
 	@Rule
-    public ProjectTestSetup projectsetup = new Java1d7ProjectTestSetup();
+    public ProjectTestSetup projectSetup= new Java1d7ProjectTestSetup();
 
 	private IJavaProject fJProject1;
 
@@ -73,7 +73,7 @@
 		IPreferenceStore store= JavaPlugin.getDefault().getPreferenceStore();
 		store.setValue(PreferenceConstants.CODEGEN_ADD_COMMENTS, false);
 
-		fJProject1= Java1d7ProjectTestSetup.getProject();
+		fJProject1= projectSetup.getProject();
 
 		StubUtility.setCodeTemplate(CodeTemplateContextType.METHODSTUB_ID, "", null);
 		StubUtility.setCodeTemplate(CodeTemplateContextType.CONSTRUCTORSTUB_ID, "", null);
@@ -81,10 +81,9 @@
 		fSourceFolder= JavaProjectHelper.addSourceContainer(fJProject1, "src");
 	}
 
-
 	@After
 	public void tearDown() throws Exception {
-		JavaProjectHelper.clear(fJProject1, Java1d7ProjectTestSetup.getDefaultClasspath());
+		JavaProjectHelper.clear(fJProject1, projectSetup.getDefaultClasspath());
 	}
 
 	@Test
diff --git a/org.eclipse.jdt.ui.tests/ui/org/eclipse/jdt/ui/tests/quickfix/ModifierCorrectionsQuickFixTest9.java b/org.eclipse.jdt.ui.tests/ui/org/eclipse/jdt/ui/tests/quickfix/ModifierCorrectionsQuickFixTest9.java
index f4ef750..1d29422 100644
--- a/org.eclipse.jdt.ui.tests/ui/org/eclipse/jdt/ui/tests/quickfix/ModifierCorrectionsQuickFixTest9.java
+++ b/org.eclipse.jdt.ui.tests/ui/org/eclipse/jdt/ui/tests/quickfix/ModifierCorrectionsQuickFixTest9.java
@@ -50,7 +50,7 @@
 public class ModifierCorrectionsQuickFixTest9 extends QuickFixTest {
 
 	@Rule
-    public ProjectTestSetup projectsetup = new Java9ProjectTestSetup();
+    public ProjectTestSetup projectSetup = new Java9ProjectTestSetup();
 
 	private IJavaProject fJProject1;
 
@@ -69,7 +69,7 @@
 		IPreferenceStore store= JavaPlugin.getDefault().getPreferenceStore();
 		store.setValue(PreferenceConstants.CODEGEN_ADD_COMMENTS, false);
 
-		fJProject1= Java9ProjectTestSetup.getProject();
+		fJProject1= projectSetup.getProject();
 
 		StubUtility.setCodeTemplate(CodeTemplateContextType.METHODSTUB_ID, "", null);
 		StubUtility.setCodeTemplate(CodeTemplateContextType.CONSTRUCTORSTUB_ID, "", null);
@@ -77,10 +77,9 @@
 		fSourceFolder= JavaProjectHelper.addSourceContainer(fJProject1, "src");
 	}
 
-
 	@After
 	public void tearDown() throws Exception {
-		JavaProjectHelper.clear(fJProject1, Java9ProjectTestSetup.getDefaultClasspath());
+		JavaProjectHelper.clear(fJProject1, projectSetup.getDefaultClasspath());
 	}
 
 	@Test
diff --git a/org.eclipse.jdt.ui.tests/ui/org/eclipse/jdt/ui/tests/quickfix/NullAnnotationsCleanUpTest1d8.java b/org.eclipse.jdt.ui.tests/ui/org/eclipse/jdt/ui/tests/quickfix/NullAnnotationsCleanUpTest1d8.java
index 9860af5..7fa1a15 100644
--- a/org.eclipse.jdt.ui.tests/ui/org/eclipse/jdt/ui/tests/quickfix/NullAnnotationsCleanUpTest1d8.java
+++ b/org.eclipse.jdt.ui.tests/ui/org/eclipse/jdt/ui/tests/quickfix/NullAnnotationsCleanUpTest1d8.java
@@ -17,7 +17,6 @@
 import java.util.HashMap;
 import java.util.Hashtable;
 
-import org.junit.Before;
 import org.junit.Rule;
 import org.junit.Test;
 import org.junit.runner.RunWith;
@@ -54,12 +53,11 @@
 public class NullAnnotationsCleanUpTest1d8 extends CleanUpTestCase {
 
 	@Rule
-    public ProjectTestSetup projectsetup = new Java1d8ProjectTestSetup();
+    public ProjectTestSetup projectSetup = new Java1d8ProjectTestSetup();
 
 	private String ANNOTATION_JAR_PATH;
 
 	@Override
-	@Before
 	public void setUp() throws Exception {
 		super.setUp();
 		Hashtable<String, String> options= JavaCore.getOptions();
@@ -89,17 +87,17 @@
 			else
 				this.ANNOTATION_JAR_PATH= bundleFile.getPath();
 		}
-		JavaProjectHelper.addLibrary(fJProject1, new Path(ANNOTATION_JAR_PATH));
+		JavaProjectHelper.addLibrary(getProject(), new Path(ANNOTATION_JAR_PATH));
 		}
 
 	@Override
 	protected IJavaProject getProject() {
-		return Java1d8ProjectTestSetup.getProject();
+		return projectSetup.getProject();
 	}
 
 	@Override
 	protected IClasspathEntry[] getDefaultClasspath() throws CoreException {
-		return Java1d8ProjectTestSetup.getDefaultClasspath();
+		return projectSetup.getDefaultClasspath();
 	}
 
 	@Test
diff --git a/org.eclipse.jdt.ui.tests/ui/org/eclipse/jdt/ui/tests/quickfix/NullAnnotationsQuickFixTest.java b/org.eclipse.jdt.ui.tests/ui/org/eclipse/jdt/ui/tests/quickfix/NullAnnotationsQuickFixTest.java
index b37ea9a..683cc7e 100644
--- a/org.eclipse.jdt.ui.tests/ui/org/eclipse/jdt/ui/tests/quickfix/NullAnnotationsQuickFixTest.java
+++ b/org.eclipse.jdt.ui.tests/ui/org/eclipse/jdt/ui/tests/quickfix/NullAnnotationsQuickFixTest.java
@@ -15,6 +15,7 @@
 package org.eclipse.jdt.ui.tests.quickfix;
 
 import static org.junit.Assert.assertEquals;
+import static org.junit.Assert.assertFalse;
 import static org.junit.Assert.assertTrue;
 
 import java.io.File;
@@ -77,7 +78,7 @@
 public class NullAnnotationsQuickFixTest extends QuickFixTest {
 
 	@Rule
-    public ProjectTestSetup projectsetup = new ProjectTestSetup();
+    public ProjectTestSetup projectSetup = new ProjectTestSetup();
 
 	private IJavaProject fJProject1;
 	private IPackageFragmentRoot fSourceFolder;
@@ -110,7 +111,7 @@
 		StubUtility.setCodeTemplate(CodeTemplateContextType.CONSTRUCTORSTUB_ID, "", null);
 		StubUtility.setCodeTemplate(CodeTemplateContextType.METHODSTUB_ID, "", null);
 
-		fJProject1= ProjectTestSetup.getProject();
+		fJProject1= projectSetup.getProject();
 
 		if (ANNOTATION_JAR_PATH == null) {
 			String version= "[1.1.0,2.0.0)"; // tests run at 1.5, need the "old" null annotations
@@ -128,7 +129,7 @@
 
 	@After
 	public void tearDown() throws Exception {
-		JavaProjectHelper.clear(fJProject1, ProjectTestSetup.getDefaultClasspath());
+		JavaProjectHelper.clear(fJProject1, projectSetup.getDefaultClasspath());
 	}
 
 	// ==== Problem:	dereferencing a @Nullable field
@@ -2201,7 +2202,7 @@
 			ICompilationUnit packageInfoCU= pack1.getCompilationUnit("package-info.java");
 			ICompilationUnit packageInfoCU2= pack2.getCompilationUnit("package-info.java");
 			assertTrue("a package-info.java should have been created in src", packageInfoCU.exists());
-			assertTrue("no package-info.java should have been created in src-tests", !packageInfoCU2.exists());
+			assertFalse("no package-info.java should have been created in src-tests", packageInfoCU2.exists());
 
 			StringBuilder expected= new StringBuilder();
 			expected.append("/**\n");
@@ -2232,7 +2233,7 @@
 			StubUtility.setCodeTemplate(CodeTemplateContextType.FILECOMMENT_ID, "/**\n * File\n */", null);
 
 			proj2= JavaProjectHelper.createJavaProject("OtherProject", "bin");
-			proj2.setRawClasspath(ProjectTestSetup.getDefaultClasspath(), null);
+			proj2.setRawClasspath(projectSetup.getDefaultClasspath(), null);
 			TestOptions.initializeProjectOptions(proj2);
 			JavaProjectHelper.addLibrary(proj2, new Path(ANNOTATION_JAR_PATH));
 			JavaProjectHelper.addRequiredProject(proj2, fJProject1);
@@ -2295,7 +2296,7 @@
 			ICompilationUnit packageInfoCU= pack1.getCompilationUnit("package-info.java");
 			ICompilationUnit packageInfoCU2= pack2.getCompilationUnit("package-info.java");
 			assertTrue("a package-info.java should have been created in fJProject1", packageInfoCU.exists());
-			assertTrue("no package-info.java should have been created in proj2", !packageInfoCU2.exists());
+			assertFalse("no package-info.java should have been created in proj2", packageInfoCU2.exists());
 
 			StringBuilder expected= new StringBuilder();
 			expected.append("/**\n");
@@ -2329,7 +2330,7 @@
 			StubUtility.setCodeTemplate(CodeTemplateContextType.FILECOMMENT_ID, "/**\n * File\n */", null);
 
 			proj2= JavaProjectHelper.createJavaProject("OtherProject", "bin");
-			proj2.setRawClasspath(ProjectTestSetup.getDefaultClasspath(), null);
+			proj2.setRawClasspath(projectSetup.getDefaultClasspath(), null);
 			TestOptions.initializeProjectOptions(proj2);
 			JavaProjectHelper.addLibrary(proj2, new Path(ANNOTATION_JAR_PATH));
 			IPackageFragmentRoot sourceFolder2= JavaProjectHelper.addSourceContainer(proj2, "src");
diff --git a/org.eclipse.jdt.ui.tests/ui/org/eclipse/jdt/ui/tests/quickfix/NullAnnotationsQuickFixTest1d8.java b/org.eclipse.jdt.ui.tests/ui/org/eclipse/jdt/ui/tests/quickfix/NullAnnotationsQuickFixTest1d8.java
index c635ab6..7dc00d6 100644
--- a/org.eclipse.jdt.ui.tests/ui/org/eclipse/jdt/ui/tests/quickfix/NullAnnotationsQuickFixTest1d8.java
+++ b/org.eclipse.jdt.ui.tests/ui/org/eclipse/jdt/ui/tests/quickfix/NullAnnotationsQuickFixTest1d8.java
@@ -67,7 +67,7 @@
 public class NullAnnotationsQuickFixTest1d8 extends QuickFixTest {
 
 	@Rule
-    public ProjectTestSetup projectsetup = new Java1d8ProjectTestSetup();
+    public ProjectTestSetup projectSetup = new Java1d8ProjectTestSetup();
 
 	private IJavaProject fJProject1;
 	private IPackageFragmentRoot fSourceFolder;
@@ -100,7 +100,7 @@
 		StubUtility.setCodeTemplate(CodeTemplateContextType.CONSTRUCTORSTUB_ID, "", null);
 		StubUtility.setCodeTemplate(CodeTemplateContextType.METHODSTUB_ID, "", null);
 
-		fJProject1= Java1d8ProjectTestSetup.getProject();
+		fJProject1= projectSetup.getProject();
 		if (this.ANNOTATION_JAR_PATH == null) {
 			String version= "[2.0.0,3.0.0)"; // tests run at 1.8, need the "new" null annotations
 			Bundle[] bundles= Platform.getBundles("org.eclipse.jdt.annotation", version);
@@ -117,7 +117,7 @@
 
 	@After
 	public void tearDown() throws Exception {
-		JavaProjectHelper.clear(fJProject1, Java1d8ProjectTestSetup.getDefaultClasspath());
+		JavaProjectHelper.clear(fJProject1, projectSetup.getDefaultClasspath());
 	}
 
 	/*
diff --git a/org.eclipse.jdt.ui.tests/ui/org/eclipse/jdt/ui/tests/quickfix/NullAnnotationsQuickFixTest1d8Mix.java b/org.eclipse.jdt.ui.tests/ui/org/eclipse/jdt/ui/tests/quickfix/NullAnnotationsQuickFixTest1d8Mix.java
index 8052d8d..63496a9 100644
--- a/org.eclipse.jdt.ui.tests/ui/org/eclipse/jdt/ui/tests/quickfix/NullAnnotationsQuickFixTest1d8Mix.java
+++ b/org.eclipse.jdt.ui.tests/ui/org/eclipse/jdt/ui/tests/quickfix/NullAnnotationsQuickFixTest1d8Mix.java
@@ -61,7 +61,7 @@
 public class NullAnnotationsQuickFixTest1d8Mix extends QuickFixTest {
 
 	@Rule
-    public ProjectTestSetup projectsetup = new Java1d8ProjectTestSetup();
+    public ProjectTestSetup projectSetup = new Java1d8ProjectTestSetup();
 
 	private IJavaProject fJProject1;
 	private IPackageFragmentRoot fSourceFolder;
@@ -94,7 +94,7 @@
 		StubUtility.setCodeTemplate(CodeTemplateContextType.CONSTRUCTORSTUB_ID, "", null);
 		StubUtility.setCodeTemplate(CodeTemplateContextType.METHODSTUB_ID, "", null);
 
-		fJProject1= Java1d8ProjectTestSetup.getProject();
+		fJProject1= projectSetup.getProject();
 
 		if (ANNOTATION_JAR_PATH == null) {
 			String version= "[1.1.0,2.0.0)"; // tests run at 1.8, but still use "old" null annotations
@@ -112,7 +112,7 @@
 
 	@After
 	public void tearDown() throws Exception {
-		JavaProjectHelper.clear(fJProject1, Java1d8ProjectTestSetup.getDefaultClasspath());
+		JavaProjectHelper.clear(fJProject1, projectSetup.getDefaultClasspath());
 	}
 
 	// ==== Problem:	unchecked conversion, type elided lambda arg
diff --git a/org.eclipse.jdt.ui.tests/ui/org/eclipse/jdt/ui/tests/quickfix/NullAnnotationsQuickFixTest9.java b/org.eclipse.jdt.ui.tests/ui/org/eclipse/jdt/ui/tests/quickfix/NullAnnotationsQuickFixTest9.java
index 0a7f71e..7c77e94 100644
--- a/org.eclipse.jdt.ui.tests/ui/org/eclipse/jdt/ui/tests/quickfix/NullAnnotationsQuickFixTest9.java
+++ b/org.eclipse.jdt.ui.tests/ui/org/eclipse/jdt/ui/tests/quickfix/NullAnnotationsQuickFixTest9.java
@@ -48,7 +48,7 @@
 public class NullAnnotationsQuickFixTest9 extends QuickFixTest {
 
 	@Rule
-    public ProjectTestSetup projectsetup = new Java9ProjectTestSetup();
+    public ProjectTestSetup projectSetup = new Java9ProjectTestSetup();
 
 	private IJavaProject fJProject1;
 
diff --git a/org.eclipse.jdt.ui.tests/ui/org/eclipse/jdt/ui/tests/quickfix/PropertiesFileQuickAssistTest.java b/org.eclipse.jdt.ui.tests/ui/org/eclipse/jdt/ui/tests/quickfix/PropertiesFileQuickAssistTest.java
index 2d7fa76..dd5788f 100644
--- a/org.eclipse.jdt.ui.tests/ui/org/eclipse/jdt/ui/tests/quickfix/PropertiesFileQuickAssistTest.java
+++ b/org.eclipse.jdt.ui.tests/ui/org/eclipse/jdt/ui/tests/quickfix/PropertiesFileQuickAssistTest.java
@@ -74,7 +74,7 @@
 public class PropertiesFileQuickAssistTest {
 
 	@Rule
-    public ProjectTestSetup projectsetup = new ProjectTestSetup();
+    public ProjectTestSetup projectSetup = new ProjectTestSetup();
 
 	private IJavaProject fJProject;
 	private IPackageFragmentRoot fSourceFolder;
@@ -92,7 +92,7 @@
 
 		setPreferences();
 
-		fJProject= ProjectTestSetup.getProject();
+		fJProject= projectSetup.getProject();
 
 		fSourceFolder= JavaProjectHelper.addSourceContainer(fJProject, "src");
 
@@ -112,7 +112,7 @@
 
 	@After
 	public void tearDown() throws Exception {
-		JavaProjectHelper.clear(fJProject, ProjectTestSetup.getDefaultClasspath());
+		JavaProjectHelper.clear(fJProject, projectSetup.getDefaultClasspath());
 	}
 
 	private static IFile createPropertyFile(IPackageFragment pack, String name, String content) throws UnsupportedEncodingException, CoreException {
diff --git a/org.eclipse.jdt.ui.tests/ui/org/eclipse/jdt/ui/tests/quickfix/QuickFixEnablementTest.java b/org.eclipse.jdt.ui.tests/ui/org/eclipse/jdt/ui/tests/quickfix/QuickFixEnablementTest.java
index a2dbf75..3007cf2 100644
--- a/org.eclipse.jdt.ui.tests/ui/org/eclipse/jdt/ui/tests/quickfix/QuickFixEnablementTest.java
+++ b/org.eclipse.jdt.ui.tests/ui/org/eclipse/jdt/ui/tests/quickfix/QuickFixEnablementTest.java
@@ -42,14 +42,14 @@
 public class QuickFixEnablementTest extends QuickFixTest {
 
 	@Rule
-    public ProjectTestSetup projectsetup = new ProjectTestSetup();
+    public ProjectTestSetup projectSetup = new ProjectTestSetup();
 
 	private IJavaProject fJProject1;
 	private IPackageFragmentRoot fSourceFolder;
 
 	@Before
 	public void setUp() throws Exception {
-		fJProject1= ProjectTestSetup.getProject();
+		fJProject1= projectSetup.getProject();
 
 		fSourceFolder= JavaProjectHelper.addSourceContainer(fJProject1, "src");
 	}
@@ -58,7 +58,7 @@
 	@After
 	public void tearDown() throws Exception {
 		TestOptions.initializeProjectOptions(fJProject1);
-		JavaProjectHelper.clear(fJProject1, ProjectTestSetup.getDefaultClasspath());
+		JavaProjectHelper.clear(fJProject1, projectSetup.getDefaultClasspath());
 	}
 
 
diff --git a/org.eclipse.jdt.ui.tests/ui/org/eclipse/jdt/ui/tests/quickfix/QuickFixTest14.java b/org.eclipse.jdt.ui.tests/ui/org/eclipse/jdt/ui/tests/quickfix/QuickFixTest14.java
index 91df428..ce758c9 100644
--- a/org.eclipse.jdt.ui.tests/ui/org/eclipse/jdt/ui/tests/quickfix/QuickFixTest14.java
+++ b/org.eclipse.jdt.ui.tests/ui/org/eclipse/jdt/ui/tests/quickfix/QuickFixTest14.java
@@ -36,11 +36,8 @@
 
 @RunWith(JUnit4.class)
 public class QuickFixTest14 extends QuickFixTest {
-
-//	private static final Class<QuickFixTest14> THIS= QuickFixTest14.class;
-
     @Rule
-    public ProjectTestSetup projectsetup = new Java14ProjectTestSetup(true);
+    public ProjectTestSetup projectSetup = new Java14ProjectTestSetup(true);
 
     private IJavaProject fJProject1;
 
@@ -60,7 +57,7 @@
 	@Test
 	public void testAddDefaultCaseSwitchStatement1() throws Exception {
 		fJProject1= JavaProjectHelper.createJavaProject("TestProject1", "bin");
-		fJProject1.setRawClasspath(Java14ProjectTestSetup.getDefaultClasspath(), null);
+		fJProject1.setRawClasspath(projectSetup.getDefaultClasspath(), null);
 		JavaProjectHelper.set14CompilerOptions(fJProject1, false);
 		fSourceFolder= JavaProjectHelper.addSourceContainer(fJProject1, "src");
 
@@ -114,7 +111,7 @@
 	@Test
 	public void testAddDefaultCaseSwitchStatement2() throws Exception {
 		fJProject1= JavaProjectHelper.createJavaProject("TestProject1", "bin");
-		fJProject1.setRawClasspath(Java14ProjectTestSetup.getDefaultClasspath(), null);
+		fJProject1.setRawClasspath(projectSetup.getDefaultClasspath(), null);
 		JavaProjectHelper.set14CompilerOptions(fJProject1, false);
 		fSourceFolder= JavaProjectHelper.addSourceContainer(fJProject1, "src");
 
@@ -169,7 +166,7 @@
 	@Test
 	public void testAddDefaultCaseSwitchStatement3() throws Exception {
 		fJProject1= JavaProjectHelper.createJavaProject("TestProject1", "bin");
-		fJProject1.setRawClasspath(Java14ProjectTestSetup.getDefaultClasspath(), null);
+		fJProject1.setRawClasspath(projectSetup.getDefaultClasspath(), null);
 		JavaProjectHelper.set14CompilerOptions(fJProject1, false);
 		fSourceFolder= JavaProjectHelper.addSourceContainer(fJProject1, "src");
 
@@ -220,7 +217,7 @@
 	@Test
 	public void testAddMissingCaseSwitchStatement1() throws Exception {
 		fJProject1= JavaProjectHelper.createJavaProject("TestProject1", "bin");
-		fJProject1.setRawClasspath(Java14ProjectTestSetup.getDefaultClasspath(), null);
+		fJProject1.setRawClasspath(projectSetup.getDefaultClasspath(), null);
 		JavaProjectHelper.set14CompilerOptions(fJProject1, false);
 		fSourceFolder= JavaProjectHelper.addSourceContainer(fJProject1, "src");
 
@@ -276,7 +273,7 @@
 	@Test
 	public void testAddDefaultCaseSwitchExpression1() throws Exception {
 		fJProject1= JavaProjectHelper.createJavaProject("TestProject1", "bin");
-		fJProject1.setRawClasspath(Java14ProjectTestSetup.getDefaultClasspath(), null);
+		fJProject1.setRawClasspath(projectSetup.getDefaultClasspath(), null);
 		JavaProjectHelper.set14CompilerOptions(fJProject1, false);
 		fSourceFolder= JavaProjectHelper.addSourceContainer(fJProject1, "src");
 
@@ -330,7 +327,7 @@
 	@Test
 	public void testAddDefaultCaseSwitchExpression2() throws Exception {
 		fJProject1= JavaProjectHelper.createJavaProject("TestProject1", "bin");
-		fJProject1.setRawClasspath(Java14ProjectTestSetup.getDefaultClasspath(), null);
+		fJProject1.setRawClasspath(projectSetup.getDefaultClasspath(), null);
 		JavaProjectHelper.set14CompilerOptions(fJProject1, false);
 		fSourceFolder= JavaProjectHelper.addSourceContainer(fJProject1, "src");
 
@@ -390,7 +387,7 @@
 	@Test
 	public void testAddMissingCaseSwitchExpression() throws Exception {
 		fJProject1= JavaProjectHelper.createJavaProject("TestProject1", "bin");
-		fJProject1.setRawClasspath(Java14ProjectTestSetup.getDefaultClasspath(), null);
+		fJProject1.setRawClasspath(projectSetup.getDefaultClasspath(), null);
 		JavaProjectHelper.set14CompilerOptions(fJProject1, false);
 		fSourceFolder= JavaProjectHelper.addSourceContainer(fJProject1, "src");
 
@@ -458,7 +455,7 @@
 	@Test
 	public void testReplaceIncorrectReturnInSwitchExpressionWithYieldStatement() throws Exception {
 		fJProject1= JavaProjectHelper.createJavaProject("TestProject1", "bin");
-		fJProject1.setRawClasspath(Java14ProjectTestSetup.getDefaultClasspath(), null);
+		fJProject1.setRawClasspath(projectSetup.getDefaultClasspath(), null);
 		JavaProjectHelper.set14CompilerOptions(fJProject1, false);
 		fSourceFolder= JavaProjectHelper.addSourceContainer(fJProject1, "src");
 
diff --git a/org.eclipse.jdt.ui.tests/ui/org/eclipse/jdt/ui/tests/quickfix/QuickFixTest1d8.java b/org.eclipse.jdt.ui.tests/ui/org/eclipse/jdt/ui/tests/quickfix/QuickFixTest1d8.java
index 7376fe2..ddbe2ea 100644
--- a/org.eclipse.jdt.ui.tests/ui/org/eclipse/jdt/ui/tests/quickfix/QuickFixTest1d8.java
+++ b/org.eclipse.jdt.ui.tests/ui/org/eclipse/jdt/ui/tests/quickfix/QuickFixTest1d8.java
@@ -60,7 +60,7 @@
 @RunWith(JUnit4.class)
 public class QuickFixTest1d8 extends QuickFixTest {
 	@Rule
-    public ProjectTestSetup projectsetup = new Java1d8ProjectTestSetup();
+    public ProjectTestSetup projectSetup = new Java1d8ProjectTestSetup();
 
 	private IJavaProject fJProject1;
 
@@ -79,7 +79,7 @@
 		IPreferenceStore store= JavaPlugin.getDefault().getPreferenceStore();
 		store.setValue(PreferenceConstants.CODEGEN_ADD_COMMENTS, false);
 
-		fJProject1= Java1d8ProjectTestSetup.getProject();
+		fJProject1= projectSetup.getProject();
 
 		StubUtility.setCodeTemplate(CodeTemplateContextType.METHODSTUB_ID, "", null);
 		StubUtility.setCodeTemplate(CodeTemplateContextType.CONSTRUCTORSTUB_ID, "", null);
@@ -89,7 +89,7 @@
 
 	@After
 	public void tearDown() throws Exception {
-		JavaProjectHelper.clear(fJProject1, Java1d8ProjectTestSetup.getDefaultClasspath());
+		JavaProjectHelper.clear(fJProject1, projectSetup.getDefaultClasspath());
 	}
 
 	@Test
diff --git a/org.eclipse.jdt.ui.tests/ui/org/eclipse/jdt/ui/tests/quickfix/QuickFixTest9.java b/org.eclipse.jdt.ui.tests/ui/org/eclipse/jdt/ui/tests/quickfix/QuickFixTest9.java
index f203491..9bd4548 100644
--- a/org.eclipse.jdt.ui.tests/ui/org/eclipse/jdt/ui/tests/quickfix/QuickFixTest9.java
+++ b/org.eclipse.jdt.ui.tests/ui/org/eclipse/jdt/ui/tests/quickfix/QuickFixTest9.java
@@ -53,7 +53,7 @@
 public class QuickFixTest9 extends QuickFixTest {
 
 	@Rule
-    public ProjectTestSetup projectsetup = new Java9ProjectTestSetup();
+    public ProjectTestSetup projectSetup = new Java9ProjectTestSetup();
 
 	private IJavaProject fJProject1;
 
@@ -67,7 +67,7 @@
 	public void setUp() throws CoreException {
 		fJProject2= JavaProjectHelper.createJavaProject("TestProject2", "bin");
 		JavaProjectHelper.set9CompilerOptions(fJProject2);
-		JavaProjectHelper.addRequiredModularProject(fJProject2, Java9ProjectTestSetup.getProject());
+		JavaProjectHelper.addRequiredModularProject(fJProject2, projectSetup.getProject());
 		IPackageFragmentRoot java9Src= JavaProjectHelper.addSourceContainer(fJProject2, "src");
 		IPackageFragment def= java9Src.createPackageFragment("", false, null);
 		IPackageFragment pkgFrag= java9Src.createPackageFragment("java.defaultProject", false, null);
@@ -84,7 +84,7 @@
 		fJProject1= JavaProjectHelper.createJavaProject("TestProject1", "bin");
 		JavaProjectHelper.set9CompilerOptions(fJProject1);
 		JavaProjectHelper.addRequiredModularProject(fJProject1, fJProject2);
-		JavaProjectHelper.addRequiredModularProject(fJProject1, Java9ProjectTestSetup.getProject());
+		JavaProjectHelper.addRequiredModularProject(fJProject1, projectSetup.getProject());
 
 		fSourceFolder= JavaProjectHelper.addSourceContainer(fJProject1, "src");
 
@@ -260,7 +260,7 @@
 	public void testMultipleNewServiceProvider() throws Exception {
 		IJavaProject jProject1= JavaProjectHelper.createJavaProject("TestProject_1", "bin");
 		JavaProjectHelper.set9CompilerOptions(jProject1);
-		JavaProjectHelper.addRequiredModularProject(jProject1, Java9ProjectTestSetup.getProject());
+		JavaProjectHelper.addRequiredModularProject(jProject1, projectSetup.getProject());
 		IPackageFragmentRoot fProject1Src = JavaProjectHelper.addSourceContainer(jProject1, "src");
 
 		StringBuffer buf= new StringBuffer();
@@ -313,7 +313,7 @@
 		// Project 1 (The Libraries)
 		IJavaProject jProject1= JavaProjectHelper.createJavaProject("TestProject_1", "bin");
 		JavaProjectHelper.set9CompilerOptions(jProject1);
-		JavaProjectHelper.addRequiredModularProject(jProject1, Java9ProjectTestSetup.getProject());
+		JavaProjectHelper.addRequiredModularProject(jProject1, projectSetup.getProject());
 		IPackageFragmentRoot fProject1Src = JavaProjectHelper.addSourceContainer(jProject1, "src");
 
 		StringBuffer buf= new StringBuffer();
@@ -334,7 +334,7 @@
 		IJavaProject jProject2= JavaProjectHelper.createJavaProject("TestProject_2", "bin");
 		JavaProjectHelper.set9CompilerOptions(jProject2);
 		JavaProjectHelper.addRequiredModularProject(jProject2, jProject1);
-		JavaProjectHelper.addRequiredModularProject(jProject2, Java9ProjectTestSetup.getProject());
+		JavaProjectHelper.addRequiredModularProject(jProject2, projectSetup.getProject());
 		IPackageFragmentRoot fProject2Src = JavaProjectHelper.addSourceContainer(jProject2, "src");
 
 		buf= new StringBuffer();
@@ -355,7 +355,7 @@
 		IJavaProject jProject3= JavaProjectHelper.createJavaProject("TestProject_3", "bin");
 		JavaProjectHelper.set9CompilerOptions(jProject3);
 		JavaProjectHelper.addRequiredModularProject(jProject3, jProject1);
-		JavaProjectHelper.addRequiredModularProject(jProject3, Java9ProjectTestSetup.getProject());
+		JavaProjectHelper.addRequiredModularProject(jProject3, projectSetup.getProject());
 		IPackageFragmentRoot fProject3Src = JavaProjectHelper.addSourceContainer(jProject3, "src");
 
 		pack= fProject3Src.createPackageFragment("test3", false, null);
@@ -400,7 +400,7 @@
 	public void testServiceProviderLocalTypeVisibility() throws Exception {
 		IJavaProject jProject1= JavaProjectHelper.createJavaProject("TestProject_1", "bin");
 		JavaProjectHelper.set9CompilerOptions(jProject1);
-		JavaProjectHelper.addRequiredModularProject(jProject1, Java9ProjectTestSetup.getProject());
+		JavaProjectHelper.addRequiredModularProject(jProject1, projectSetup.getProject());
 		IPackageFragmentRoot fProject1Src = JavaProjectHelper.addSourceContainer(jProject1, "src");
 
 		StringBuffer buf= new StringBuffer();
@@ -442,7 +442,7 @@
 	public void testServiceProviderConstructorProposal () throws Exception {
 		IJavaProject jProject1= JavaProjectHelper.createJavaProject("TestProject_1", "bin");
 		JavaProjectHelper.set9CompilerOptions(jProject1);
-		JavaProjectHelper.addRequiredModularProject(jProject1, Java9ProjectTestSetup.getProject());
+		JavaProjectHelper.addRequiredModularProject(jProject1, projectSetup.getProject());
 		IPackageFragmentRoot fProject1Src = JavaProjectHelper.addSourceContainer(jProject1, "src");
 
 		StringBuffer buf= new StringBuffer();
@@ -495,7 +495,7 @@
 	public void testServiceProviderVisibilityProposal () throws Exception {
 		IJavaProject jProject1= JavaProjectHelper.createJavaProject("TestProject_1", "bin");
 		JavaProjectHelper.set9CompilerOptions(jProject1);
-		JavaProjectHelper.addRequiredModularProject(jProject1, Java9ProjectTestSetup.getProject());
+		JavaProjectHelper.addRequiredModularProject(jProject1, projectSetup.getProject());
 		IPackageFragmentRoot fProject1Src = JavaProjectHelper.addSourceContainer(jProject1, "src");
 
 		StringBuffer buf= new StringBuffer();
diff --git a/org.eclipse.jdt.ui.tests/ui/org/eclipse/jdt/ui/tests/quickfix/QuickFixTestPreview.java b/org.eclipse.jdt.ui.tests/ui/org/eclipse/jdt/ui/tests/quickfix/QuickFixTestPreview.java
index 43bd09b..78bf5a5 100644
--- a/org.eclipse.jdt.ui.tests/ui/org/eclipse/jdt/ui/tests/quickfix/QuickFixTestPreview.java
+++ b/org.eclipse.jdt.ui.tests/ui/org/eclipse/jdt/ui/tests/quickfix/QuickFixTestPreview.java
@@ -49,7 +49,7 @@
 //	private static final Class<QuickFixTest14> THIS= QuickFixTest14.class;
 
     @Rule
-    public ProjectTestSetup projectsetup = new Java14ProjectTestSetup(true);
+    public ProjectTestSetup projectSetup = new Java14ProjectTestSetup(true);
 
     private IJavaProject fJProject1;
 
@@ -69,7 +69,7 @@
 	@Test
 	public void testEnablePreviewsAndOpenCompilerPropertiesProposals() throws Exception {
 		fJProject1= JavaProjectHelper.createJavaProject("TestProject1", "bin");
-		fJProject1.setRawClasspath(Java14ProjectTestSetup.getDefaultClasspath(), null);
+		fJProject1.setRawClasspath(projectSetup.getDefaultClasspath(), null);
 		JavaProjectHelper.set14CompilerOptions(fJProject1, false);
 
 		fSourceFolder= JavaProjectHelper.addSourceContainer(fJProject1, "src");
@@ -97,7 +97,7 @@
 	@Test
 	public void testRecordSuppressWarningsProposals() throws Exception {
 		fJProject1= JavaProjectHelper.createJavaProject("TestProject1", "bin");
-		fJProject1.setRawClasspath(Java14ProjectTestSetup.getDefaultClasspath(), null);
+		fJProject1.setRawClasspath(projectSetup.getDefaultClasspath(), null);
 		JavaProjectHelper.set14CompilerOptions(fJProject1, true);
 
 		Map<String, String> options= fJProject1.getOptions(false);
@@ -140,7 +140,7 @@
 	@Test
 	public void testGetNeedHigherComplianceProposalsAndEnablePreviewsProposal() throws Exception {
 		fJProject1= JavaProjectHelper.createJavaProject("TestProject1", "bin");
-		fJProject1.setRawClasspath(Java14ProjectTestSetup.getDefaultClasspath(), null);
+		fJProject1.setRawClasspath(projectSetup.getDefaultClasspath(), null);
 		JavaProjectHelper.set13CompilerOptions(fJProject1, false);
 
 		fSourceFolder= JavaProjectHelper.addSourceContainer(fJProject1, "src");
@@ -169,7 +169,7 @@
 	@Test
 	public void testNoEnablePreviewProposal() throws Exception {
 		fJProject1= JavaProjectHelper.createJavaProject("TestProject1", "bin");
-		fJProject1.setRawClasspath(Java14ProjectTestSetup.getDefaultClasspath(), null);
+		fJProject1.setRawClasspath(projectSetup.getDefaultClasspath(), null);
 		JavaProjectHelper.set14CompilerOptions(fJProject1, true);
 
 		fSourceFolder= JavaProjectHelper.addSourceContainer(fJProject1, "src");
diff --git a/org.eclipse.jdt.ui.tests/ui/org/eclipse/jdt/ui/tests/quickfix/ReorgQuickFixTest.java b/org.eclipse.jdt.ui.tests/ui/org/eclipse/jdt/ui/tests/quickfix/ReorgQuickFixTest.java
index 1fa469f..34e2ecd 100644
--- a/org.eclipse.jdt.ui.tests/ui/org/eclipse/jdt/ui/tests/quickfix/ReorgQuickFixTest.java
+++ b/org.eclipse.jdt.ui.tests/ui/org/eclipse/jdt/ui/tests/quickfix/ReorgQuickFixTest.java
@@ -74,7 +74,7 @@
 public class ReorgQuickFixTest extends QuickFixTest {
 
 	@Rule
-    public ProjectTestSetup projectsetup = new ProjectTestSetup();
+    public ProjectTestSetup projectSetup = new ProjectTestSetup();
 
 	private IJavaProject fJProject1;
 	private IPackageFragmentRoot fSourceFolder;
@@ -90,17 +90,16 @@
 		IPreferenceStore store= JavaPlugin.getDefault().getPreferenceStore();
 		store.setValue(PreferenceConstants.CODEGEN_ADD_COMMENTS, false);
 
-		fJProject1= ProjectTestSetup.getProject();
+		fJProject1= projectSetup.getProject();
 
 		fSourceFolder= JavaProjectHelper.addSourceContainer(fJProject1, "src");
 	}
 
 	@After
 	public void tearDown() throws Exception {
-		JavaProjectHelper.clear(fJProject1, ProjectTestSetup.getDefaultClasspath());
+		JavaProjectHelper.clear(fJProject1, projectSetup.getDefaultClasspath());
 	}
 
-
 	@Test
 	public void testUnusedImports() throws Exception {
 		IPackageFragment pack1= fSourceFolder.createPackageFragment("test1", false, null);
diff --git a/org.eclipse.jdt.ui.tests/ui/org/eclipse/jdt/ui/tests/quickfix/ReturnTypeQuickFixTest.java b/org.eclipse.jdt.ui.tests/ui/org/eclipse/jdt/ui/tests/quickfix/ReturnTypeQuickFixTest.java
index 0cc522a..92c618f 100644
--- a/org.eclipse.jdt.ui.tests/ui/org/eclipse/jdt/ui/tests/quickfix/ReturnTypeQuickFixTest.java
+++ b/org.eclipse.jdt.ui.tests/ui/org/eclipse/jdt/ui/tests/quickfix/ReturnTypeQuickFixTest.java
@@ -50,7 +50,7 @@
 public class ReturnTypeQuickFixTest extends QuickFixTest {
 
 	@Rule
-    public ProjectTestSetup projectsetup = new ProjectTestSetup();
+    public ProjectTestSetup projectSetup = new ProjectTestSetup();
 
 	private IJavaProject fJProject1;
 	private IPackageFragmentRoot fSourceFolder;
@@ -66,18 +66,16 @@
 		IPreferenceStore store= JavaPlugin.getDefault().getPreferenceStore();
 		store.setValue(PreferenceConstants.CODEGEN_ADD_COMMENTS, false);
 
-		fJProject1= ProjectTestSetup.getProject();
+		fJProject1= projectSetup.getProject();
 
 		fSourceFolder= JavaProjectHelper.addSourceContainer(fJProject1, "src");
 	}
 
-
 	@After
 	public void tearDown() throws Exception {
-		JavaProjectHelper.clear(fJProject1, ProjectTestSetup.getDefaultClasspath());
+		JavaProjectHelper.clear(fJProject1, projectSetup.getDefaultClasspath());
 	}
 
-
 	@Test
 	public void testReturnTypeMissingWithSimpleType() throws Exception {
 		IPackageFragment pack1= fSourceFolder.createPackageFragment("test1", false, null);
diff --git a/org.eclipse.jdt.ui.tests/ui/org/eclipse/jdt/ui/tests/quickfix/SaveParticipantTest.java b/org.eclipse.jdt.ui.tests/ui/org/eclipse/jdt/ui/tests/quickfix/SaveParticipantTest.java
index 40e89de..c248e0f 100644
--- a/org.eclipse.jdt.ui.tests/ui/org/eclipse/jdt/ui/tests/quickfix/SaveParticipantTest.java
+++ b/org.eclipse.jdt.ui.tests/ui/org/eclipse/jdt/ui/tests/quickfix/SaveParticipantTest.java
@@ -17,18 +17,20 @@
 
 import java.util.Hashtable;
 
-import org.junit.Before;
 import org.junit.Rule;
 import org.junit.Test;
 import org.junit.runner.RunWith;
 import org.junit.runners.JUnit4;
 
+import org.eclipse.core.runtime.CoreException;
 import org.eclipse.core.runtime.preferences.IEclipsePreferences;
 import org.eclipse.core.runtime.preferences.InstanceScope;
 
 import org.eclipse.ui.PartInitException;
 
+import org.eclipse.jdt.core.IClasspathEntry;
 import org.eclipse.jdt.core.ICompilationUnit;
+import org.eclipse.jdt.core.IJavaProject;
 import org.eclipse.jdt.core.IPackageFragment;
 import org.eclipse.jdt.core.JavaCore;
 import org.eclipse.jdt.core.JavaModelException;
@@ -49,10 +51,19 @@
 public class SaveParticipantTest extends CleanUpTestCase {
 
 	@Rule
-    public ProjectTestSetup projectsetup = new ProjectTestSetup();
+    public ProjectTestSetup projectSetup = new ProjectTestSetup();
 
 	@Override
-	@Before
+	protected IJavaProject getProject() {
+		return projectSetup.getProject();
+	}
+
+	@Override
+	protected IClasspathEntry[] getDefaultClasspath() throws CoreException {
+		return projectSetup.getDefaultClasspath();
+	}
+
+	@Override
 	public void setUp() throws Exception {
 		super.setUp();
 
diff --git a/org.eclipse.jdt.ui.tests/ui/org/eclipse/jdt/ui/tests/quickfix/SerialVersionQuickFixTest.java b/org.eclipse.jdt.ui.tests/ui/org/eclipse/jdt/ui/tests/quickfix/SerialVersionQuickFixTest.java
index 630f47d..1324462 100644
--- a/org.eclipse.jdt.ui.tests/ui/org/eclipse/jdt/ui/tests/quickfix/SerialVersionQuickFixTest.java
+++ b/org.eclipse.jdt.ui.tests/ui/org/eclipse/jdt/ui/tests/quickfix/SerialVersionQuickFixTest.java
@@ -56,7 +56,7 @@
 public class SerialVersionQuickFixTest extends QuickFixTest {
 
 	@Rule
-    public ProjectTestSetup projectsetup = new ProjectTestSetup();
+    public ProjectTestSetup projectSetup = new ProjectTestSetup();
 
 	private static final String DEFAULT_VALUE= "1L";
 
@@ -81,7 +81,7 @@
 	@Before
 	public void setUp() throws Exception {
 		JavaRuntime.getDefaultVMInstall();
-		fProject= ProjectTestSetup.getProject();
+		fProject= projectSetup.getProject();
 
 		Hashtable<String, String> options= TestOptions.getDefaultOptions();
 
@@ -107,7 +107,7 @@
 
 	@After
 	public void tearDown() throws Exception {
-		JavaProjectHelper.clear(fProject, ProjectTestSetup.getDefaultClasspath());
+		JavaProjectHelper.clear(fProject, projectSetup.getDefaultClasspath());
 	}
 
 	@Test
diff --git a/org.eclipse.jdt.ui.tests/ui/org/eclipse/jdt/ui/tests/quickfix/SurroundWithTemplateTest.java b/org.eclipse.jdt.ui.tests/ui/org/eclipse/jdt/ui/tests/quickfix/SurroundWithTemplateTest.java
index def2ac8..f02b7cc 100644
--- a/org.eclipse.jdt.ui.tests/ui/org/eclipse/jdt/ui/tests/quickfix/SurroundWithTemplateTest.java
+++ b/org.eclipse.jdt.ui.tests/ui/org/eclipse/jdt/ui/tests/quickfix/SurroundWithTemplateTest.java
@@ -61,7 +61,7 @@
 public class SurroundWithTemplateTest extends QuickFixTest {
 
 	@Rule
-    public ProjectTestSetup projectsetup = new ProjectTestSetup();
+    public ProjectTestSetup projectSetup = new ProjectTestSetup();
 
 	private IJavaProject fJProject1;
 	private IPackageFragmentRoot fSourceFolder;
@@ -86,14 +86,14 @@
 		corePrefs.setValue(JavaCore.CODEASSIST_FIELD_SUFFIXES, "");
 		corePrefs.setValue(JavaCore.CODEASSIST_STATIC_FIELD_SUFFIXES, "");
 
-		fJProject1= ProjectTestSetup.getProject();
+		fJProject1= projectSetup.getProject();
 
 		fSourceFolder= JavaProjectHelper.addSourceContainer(fJProject1, "src");
 	}
 
 	@After
 	public void tearDown() throws Exception {
-		JavaProjectHelper.clear(fJProject1, ProjectTestSetup.getDefaultClasspath());
+		JavaProjectHelper.clear(fJProject1, projectSetup.getDefaultClasspath());
 	}
 
 	private static List<IJavaCompletionProposal> getRunnableProposal(AssistContext context) throws CoreException {
diff --git a/org.eclipse.jdt.ui.tests/ui/org/eclipse/jdt/ui/tests/quickfix/TypeAnnotationQuickFixTest.java b/org.eclipse.jdt.ui.tests/ui/org/eclipse/jdt/ui/tests/quickfix/TypeAnnotationQuickFixTest.java
index 5c0d1b3..8542bd7 100644
--- a/org.eclipse.jdt.ui.tests/ui/org/eclipse/jdt/ui/tests/quickfix/TypeAnnotationQuickFixTest.java
+++ b/org.eclipse.jdt.ui.tests/ui/org/eclipse/jdt/ui/tests/quickfix/TypeAnnotationQuickFixTest.java
@@ -53,7 +53,7 @@
 public class TypeAnnotationQuickFixTest extends QuickFixTest {
 
 	@Rule
-    public ProjectTestSetup projectsetup = new Java1d8ProjectTestSetup();
+    public ProjectTestSetup projectSetup = new Java1d8ProjectTestSetup();
 
 	private IJavaProject fJProject1;
 
@@ -72,7 +72,7 @@
 		IPreferenceStore store= JavaPlugin.getDefault().getPreferenceStore();
 		store.setValue(PreferenceConstants.CODEGEN_ADD_COMMENTS, false);
 
-		fJProject1= Java1d8ProjectTestSetup.getProject();
+		fJProject1= projectSetup.getProject();
 
 		StubUtility.setCodeTemplate(CodeTemplateContextType.METHODSTUB_ID, "", null);
 		StubUtility.setCodeTemplate(CodeTemplateContextType.CONSTRUCTORSTUB_ID, "", null);
@@ -83,7 +83,7 @@
 
 	@After
 	public void tearDown() throws Exception {
-		JavaProjectHelper.clear(fJProject1, Java1d8ProjectTestSetup.getDefaultClasspath());
+		JavaProjectHelper.clear(fJProject1, projectSetup.getDefaultClasspath());
 	}
 
 	public void runQuickFixTest(String testCaseSpecificInput, String... testCaseSpecificOutputs) throws Exception {
diff --git a/org.eclipse.jdt.ui.tests/ui/org/eclipse/jdt/ui/tests/quickfix/TypeMismatchQuickFixTests.java b/org.eclipse.jdt.ui.tests/ui/org/eclipse/jdt/ui/tests/quickfix/TypeMismatchQuickFixTests.java
index 75a1aaf..65b9d5d 100644
--- a/org.eclipse.jdt.ui.tests/ui/org/eclipse/jdt/ui/tests/quickfix/TypeMismatchQuickFixTests.java
+++ b/org.eclipse.jdt.ui.tests/ui/org/eclipse/jdt/ui/tests/quickfix/TypeMismatchQuickFixTests.java
@@ -16,7 +16,8 @@
 package org.eclipse.jdt.ui.tests.quickfix;
 
 import static org.junit.Assert.assertArrayEquals;
-import static org.junit.Assert.assertTrue;
+import static org.junit.Assert.assertEquals;
+import static org.junit.Assert.assertNotEquals;
 
 import java.util.ArrayList;
 import java.util.HashMap;
@@ -67,7 +68,7 @@
 public class TypeMismatchQuickFixTests extends QuickFixTest {
 
 	@Rule
-    public ProjectTestSetup projectsetup = new ProjectTestSetup();
+    public ProjectTestSetup projectSetup = new ProjectTestSetup();
 
 	private IJavaProject fJProject1;
 	private IPackageFragmentRoot fSourceFolder;
@@ -90,18 +91,16 @@
 		StubUtility.setCodeTemplate(CodeTemplateContextType.CONSTRUCTORSTUB_ID, "", null);
 		StubUtility.setCodeTemplate(CodeTemplateContextType.METHODSTUB_ID, "", null);
 
-		fJProject1= ProjectTestSetup.getProject();
+		fJProject1= projectSetup.getProject();
 
 		fSourceFolder= JavaProjectHelper.addSourceContainer(fJProject1, "src");
 	}
 
-
 	@After
 	public void tearDown() throws Exception {
-		JavaProjectHelper.clear(fJProject1,ProjectTestSetup.getDefaultClasspath());
+		JavaProjectHelper.clear(fJProject1,projectSetup.getDefaultClasspath());
 	}
 
-
 	@Test
 	public void testTypeMismatchInVarDecl() throws Exception {
 		IPackageFragment pack1= fSourceFolder.createPackageFragment("test1", false, null);
@@ -2448,7 +2447,7 @@
 		assertNumberOfProposals(proposals, 3);
 
 		ICompletionProposal proposal= proposals.get(0);
-		assertTrue(proposal.getDisplayString().indexOf("Integer") != -1);
+		assertNotEquals(-1, proposal.getDisplayString().indexOf("Integer"));
 
 		String[] expected= new String[3];
 		buf= new StringBuffer();
@@ -2511,13 +2510,13 @@
 		assertNumberOfProposals(proposals, 3);
 
 		ICompletionProposal proposal= proposals.get(0);
-		assertTrue(proposal.getDisplayString().indexOf("Integer") == -1);
+		assertEquals(-1, proposal.getDisplayString().indexOf("Integer"));
 
 		ICompletionProposal proposal2= proposals.get(1);
-		assertTrue(proposal2.getDisplayString().indexOf("Integer") == -1);
+		assertEquals(-1, proposal2.getDisplayString().indexOf("Integer"));
 
 		ICompletionProposal proposal3= proposals.get(2);
-		assertTrue(proposal3.getDisplayString().indexOf("Integer") == -1);
+		assertEquals(-1, proposal3.getDisplayString().indexOf("Integer"));
 
 		String[] expected= new String[3];
 		buf= new StringBuffer();
diff --git a/org.eclipse.jdt.ui.tests/ui/org/eclipse/jdt/ui/tests/quickfix/TypeParameterMismatchTest.java b/org.eclipse.jdt.ui.tests/ui/org/eclipse/jdt/ui/tests/quickfix/TypeParameterMismatchTest.java
index 0f105eb..9908ae5 100644
--- a/org.eclipse.jdt.ui.tests/ui/org/eclipse/jdt/ui/tests/quickfix/TypeParameterMismatchTest.java
+++ b/org.eclipse.jdt.ui.tests/ui/org/eclipse/jdt/ui/tests/quickfix/TypeParameterMismatchTest.java
@@ -49,7 +49,7 @@
 public class TypeParameterMismatchTest extends QuickFixTest {
 
 	@Rule
-    public ProjectTestSetup projectsetup = new ProjectTestSetup();
+    public ProjectTestSetup projectSetup = new ProjectTestSetup();
 
 	private IJavaProject fJProject1;
 	private IPackageFragmentRoot fSourceFolder;
@@ -72,7 +72,7 @@
 		StubUtility.setCodeTemplate(CodeTemplateContextType.CONSTRUCTORSTUB_ID, "", null);
 		StubUtility.setCodeTemplate(CodeTemplateContextType.METHODSTUB_ID, "", null);
 
-		fJProject1= ProjectTestSetup.getProject();
+		fJProject1= projectSetup.getProject();
 
 		fSourceFolder= JavaProjectHelper.addSourceContainer(fJProject1, "src");
 	}
@@ -80,7 +80,7 @@
 
 	@After
 	public void tearDown() throws Exception {
-		JavaProjectHelper.clear(fJProject1, ProjectTestSetup.getDefaultClasspath());
+		JavaProjectHelper.clear(fJProject1, projectSetup.getDefaultClasspath());
 	}
 
 	@Test
diff --git a/org.eclipse.jdt.ui.tests/ui/org/eclipse/jdt/ui/tests/quickfix/UnnecessaryArrayCreationQuickFixTest.java b/org.eclipse.jdt.ui.tests/ui/org/eclipse/jdt/ui/tests/quickfix/UnnecessaryArrayCreationQuickFixTest.java
index 47a5d8c..71518b7 100644
--- a/org.eclipse.jdt.ui.tests/ui/org/eclipse/jdt/ui/tests/quickfix/UnnecessaryArrayCreationQuickFixTest.java
+++ b/org.eclipse.jdt.ui.tests/ui/org/eclipse/jdt/ui/tests/quickfix/UnnecessaryArrayCreationQuickFixTest.java
@@ -51,7 +51,7 @@
 public class UnnecessaryArrayCreationQuickFixTest extends QuickFixTest {
 
 	@Rule
-    public ProjectTestSetup projectsetup = new ProjectTestSetup();
+    public ProjectTestSetup projectSetup = new ProjectTestSetup();
 
 	private IJavaProject fJProject1;
 	private IPackageFragmentRoot fSourceFolder;
@@ -67,7 +67,7 @@
 		IPreferenceStore store= JavaPlugin.getDefault().getPreferenceStore();
 		store.setValue(PreferenceConstants.CODEGEN_ADD_COMMENTS, false);
 
-		fJProject1= ProjectTestSetup.getProject();
+		fJProject1= projectSetup.getProject();
 
 		fSourceFolder= JavaProjectHelper.addSourceContainer(fJProject1, "src");
 		fRemoveArrayCreationProposal= null;
@@ -75,7 +75,7 @@
 
 	@After
 	public void tearDown() throws Exception {
-		JavaProjectHelper.clear(fJProject1, ProjectTestSetup.getDefaultClasspath());
+		JavaProjectHelper.clear(fJProject1, projectSetup.getDefaultClasspath());
 		fJProject1= null;
 		fSourceFolder= null;
 		fRemoveArrayCreationProposal= null;
diff --git a/org.eclipse.jdt.ui.tests/ui/org/eclipse/jdt/ui/tests/quickfix/UnresolvedMethodsQuickFixTest.java b/org.eclipse.jdt.ui.tests/ui/org/eclipse/jdt/ui/tests/quickfix/UnresolvedMethodsQuickFixTest.java
index 8139472..eb41ac8 100644
--- a/org.eclipse.jdt.ui.tests/ui/org/eclipse/jdt/ui/tests/quickfix/UnresolvedMethodsQuickFixTest.java
+++ b/org.eclipse.jdt.ui.tests/ui/org/eclipse/jdt/ui/tests/quickfix/UnresolvedMethodsQuickFixTest.java
@@ -52,7 +52,7 @@
 public class UnresolvedMethodsQuickFixTest extends QuickFixTest {
 
 	@Rule
-    public ProjectTestSetup projectsetup = new ProjectTestSetup();
+    public ProjectTestSetup projectSetup = new ProjectTestSetup();
 
 	private IJavaProject fJProject1;
 	private IPackageFragmentRoot fSourceFolder;
@@ -70,7 +70,7 @@
 		IPreferenceStore store= JavaPlugin.getDefault().getPreferenceStore();
 		store.setValue(PreferenceConstants.CODEGEN_ADD_COMMENTS, false);
 
-		fJProject1= ProjectTestSetup.getProject();
+		fJProject1= projectSetup.getProject();
 
 		StubUtility.setCodeTemplate(CodeTemplateContextType.CATCHBLOCK_ID, "", null);
 		StubUtility.setCodeTemplate(CodeTemplateContextType.CONSTRUCTORSTUB_ID, "", null);
@@ -81,7 +81,7 @@
 
 	@After
 	public void tearDown() throws Exception {
-		JavaProjectHelper.clear(fJProject1, ProjectTestSetup.getDefaultClasspath());
+		JavaProjectHelper.clear(fJProject1, projectSetup.getDefaultClasspath());
 	}
 
 	@Test
diff --git a/org.eclipse.jdt.ui.tests/ui/org/eclipse/jdt/ui/tests/quickfix/UnresolvedMethodsQuickFixTest1d8.java b/org.eclipse.jdt.ui.tests/ui/org/eclipse/jdt/ui/tests/quickfix/UnresolvedMethodsQuickFixTest1d8.java
index 2b0d3ab..deefd55 100644
--- a/org.eclipse.jdt.ui.tests/ui/org/eclipse/jdt/ui/tests/quickfix/UnresolvedMethodsQuickFixTest1d8.java
+++ b/org.eclipse.jdt.ui.tests/ui/org/eclipse/jdt/ui/tests/quickfix/UnresolvedMethodsQuickFixTest1d8.java
@@ -62,7 +62,7 @@
 public class UnresolvedMethodsQuickFixTest1d8 extends QuickFixTest {
 
 	@Rule
-    public ProjectTestSetup projectsetup = new Java1d8ProjectTestSetup();
+    public ProjectTestSetup projectSetup = new Java1d8ProjectTestSetup();
 
 	private IJavaProject fJProject1;
 
@@ -81,7 +81,7 @@
 		IPreferenceStore store= JavaPlugin.getDefault().getPreferenceStore();
 		store.setValue(PreferenceConstants.CODEGEN_ADD_COMMENTS, false);
 
-		fJProject1= Java1d8ProjectTestSetup.getProject();
+		fJProject1= projectSetup.getProject();
 
 		StubUtility.setCodeTemplate(CodeTemplateContextType.CATCHBLOCK_ID, "", null);
 		StubUtility.setCodeTemplate(CodeTemplateContextType.CONSTRUCTORSTUB_ID, "", null);
@@ -92,7 +92,7 @@
 
 	@After
 	public void tearDown() throws Exception {
-		JavaProjectHelper.clear(fJProject1, Java1d8ProjectTestSetup.getDefaultClasspath());
+		JavaProjectHelper.clear(fJProject1, projectSetup.getDefaultClasspath());
 	}
 
 	@Test
diff --git a/org.eclipse.jdt.ui.tests/ui/org/eclipse/jdt/ui/tests/quickfix/UnresolvedTypesQuickFixTest.java b/org.eclipse.jdt.ui.tests/ui/org/eclipse/jdt/ui/tests/quickfix/UnresolvedTypesQuickFixTest.java
index 1d1b1d7..5324124 100644
--- a/org.eclipse.jdt.ui.tests/ui/org/eclipse/jdt/ui/tests/quickfix/UnresolvedTypesQuickFixTest.java
+++ b/org.eclipse.jdt.ui.tests/ui/org/eclipse/jdt/ui/tests/quickfix/UnresolvedTypesQuickFixTest.java
@@ -57,7 +57,7 @@
 public class UnresolvedTypesQuickFixTest extends QuickFixTest {
 
 	@Rule
-    public ProjectTestSetup projectsetup = new ProjectTestSetup();
+    public ProjectTestSetup projectSetup = new ProjectTestSetup();
 
 	private IJavaProject fJProject1;
 	private IPackageFragmentRoot fSourceFolder;
@@ -73,7 +73,7 @@
 		IPreferenceStore store= JavaPlugin.getDefault().getPreferenceStore();
 		store.setValue(PreferenceConstants.CODEGEN_ADD_COMMENTS, false);
 
-		fJProject1= ProjectTestSetup.getProject();
+		fJProject1= projectSetup.getProject();
 
 		String newFileTemplate= "${package_declaration}\n\n${type_declaration}";
 		StubUtility.setCodeTemplate(CodeTemplateContextType.NEWTYPE_ID, newFileTemplate, null);
@@ -83,10 +83,9 @@
 		fSourceFolder= JavaProjectHelper.addSourceContainer(fJProject1, "src");
 	}
 
-
 	@After
 	public void tearDown() throws Exception {
-		JavaProjectHelper.clear(fJProject1, ProjectTestSetup.getDefaultClasspath());
+		JavaProjectHelper.clear(fJProject1, projectSetup.getDefaultClasspath());
 	}
 
 	@Test
diff --git a/org.eclipse.jdt.ui.tests/ui/org/eclipse/jdt/ui/tests/quickfix/UnresolvedVariablesQuickFixTest.java b/org.eclipse.jdt.ui.tests/ui/org/eclipse/jdt/ui/tests/quickfix/UnresolvedVariablesQuickFixTest.java
index fa49ee5..6bc75c8 100644
--- a/org.eclipse.jdt.ui.tests/ui/org/eclipse/jdt/ui/tests/quickfix/UnresolvedVariablesQuickFixTest.java
+++ b/org.eclipse.jdt.ui.tests/ui/org/eclipse/jdt/ui/tests/quickfix/UnresolvedVariablesQuickFixTest.java
@@ -56,7 +56,7 @@
 public class UnresolvedVariablesQuickFixTest extends QuickFixTest {
 
 	@Rule
-    public ProjectTestSetup projectsetup = new ProjectTestSetup();
+    public ProjectTestSetup projectSetup = new ProjectTestSetup();
 
 	private IJavaProject fJProject1;
 	private IPackageFragmentRoot fSourceFolder;
@@ -74,7 +74,7 @@
 		IPreferenceStore store= JavaPlugin.getDefault().getPreferenceStore();
 		store.setValue(PreferenceConstants.CODEGEN_ADD_COMMENTS, false);
 
-		fJProject1= ProjectTestSetup.getProject();
+		fJProject1= projectSetup.getProject();
 
 		StubUtility.setCodeTemplate(CodeTemplateContextType.NEWTYPE_ID, "", null);
 		StubUtility.setCodeTemplate(CodeTemplateContextType.TYPECOMMENT_ID, "", null);
@@ -84,7 +84,7 @@
 
 	@After
 	public void tearDown() throws Exception {
-		JavaProjectHelper.clear(fJProject1, ProjectTestSetup.getDefaultClasspath());
+		JavaProjectHelper.clear(fJProject1, projectSetup.getDefaultClasspath());
 	}
 
 	@Test
diff --git a/org.eclipse.jdt.ui.tests/ui/org/eclipse/jdt/ui/tests/quickfix/UtilitiesTest.java b/org.eclipse.jdt.ui.tests/ui/org/eclipse/jdt/ui/tests/quickfix/UtilitiesTest.java
index 91b8720..fd6b701 100644
--- a/org.eclipse.jdt.ui.tests/ui/org/eclipse/jdt/ui/tests/quickfix/UtilitiesTest.java
+++ b/org.eclipse.jdt.ui.tests/ui/org/eclipse/jdt/ui/tests/quickfix/UtilitiesTest.java
@@ -59,7 +59,7 @@
 public class UtilitiesTest extends QuickFixTest {
 
 	@Rule
-    public ProjectTestSetup projectsetup = new ProjectTestSetup();
+    public ProjectTestSetup projectSetup = new ProjectTestSetup();
 
 	private IJavaProject fJProject1;
 	private IPackageFragmentRoot fSourceFolder;
@@ -75,14 +75,14 @@
 		IPreferenceStore store= JavaPlugin.getDefault().getPreferenceStore();
 		store.setValue(PreferenceConstants.CODEGEN_ADD_COMMENTS, false);
 
-		fJProject1= ProjectTestSetup.getProject();
+		fJProject1= projectSetup.getProject();
 
 		fSourceFolder= JavaProjectHelper.addSourceContainer(fJProject1, "src");
 	}
 
 	@After
 	public void tearDown() throws Exception {
-		JavaProjectHelper.clear(fJProject1, ProjectTestSetup.getDefaultClasspath());
+		JavaProjectHelper.clear(fJProject1, projectSetup.getDefaultClasspath());
 	}
 
 	@Test
diff --git a/org.eclipse.jdt.ui.tests/ui/org/eclipse/jdt/ui/tests/refactoring/IsCompletelySelectedTest.java b/org.eclipse.jdt.ui.tests/ui/org/eclipse/jdt/ui/tests/refactoring/IsCompletelySelectedTest.java
index ef61163..a87647d 100644
--- a/org.eclipse.jdt.ui.tests/ui/org/eclipse/jdt/ui/tests/refactoring/IsCompletelySelectedTest.java
+++ b/org.eclipse.jdt.ui.tests/ui/org/eclipse/jdt/ui/tests/refactoring/IsCompletelySelectedTest.java
@@ -73,7 +73,7 @@
 	private IPackageFragment package_a_b_e;
 
 	@Rule
-    public ProjectTestSetup projectsetup = new ProjectTestSetup();
+    public ProjectTestSetup projectSetup = new ProjectTestSetup();
 
 	@Before
 	public void setUp() throws Exception {
diff --git a/org.eclipse.jdt.ui.tests/ui/org/eclipse/jdt/ui/tests/search/FileAdapterTest.java b/org.eclipse.jdt.ui.tests/ui/org/eclipse/jdt/ui/tests/search/FileAdapterTest.java
index cff4540..c7ec979 100644
--- a/org.eclipse.jdt.ui.tests/ui/org/eclipse/jdt/ui/tests/search/FileAdapterTest.java
+++ b/org.eclipse.jdt.ui.tests/ui/org/eclipse/jdt/ui/tests/search/FileAdapterTest.java
@@ -37,7 +37,7 @@
 public class FileAdapterTest {
 
 	@Rule
-	public JUnitSourceSetup projectsetup = new JUnitSourceSetup();
+	public JUnitSourceSetup projectSetup = new JUnitSourceSetup();
 
 	@Test
 	public void testGetFile() throws Exception {
diff --git a/org.eclipse.jdt.ui.tests/ui/org/eclipse/jdt/ui/tests/search/NLSSearchTest.java b/org.eclipse.jdt.ui.tests/ui/org/eclipse/jdt/ui/tests/search/NLSSearchTest.java
index 7db380e..1fff91c 100644
--- a/org.eclipse.jdt.ui.tests/ui/org/eclipse/jdt/ui/tests/search/NLSSearchTest.java
+++ b/org.eclipse.jdt.ui.tests/ui/org/eclipse/jdt/ui/tests/search/NLSSearchTest.java
@@ -53,14 +53,14 @@
 public class NLSSearchTest {
 
 	@Rule
-	public ProjectTestSetup projectsetup = new ProjectTestSetup();
+	public ProjectTestSetup projectSetup = new ProjectTestSetup();
 
 	private IJavaProject fJProject1;
 	private IPackageFragmentRoot fSourceFolder;
 
 	@Before
 	public void setUp() throws CoreException {
-		fJProject1= ProjectTestSetup.getProject();
+		fJProject1= projectSetup.getProject();
 		fSourceFolder= JavaProjectHelper.addSourceContainer(fJProject1, "src");
 
 		IPackageFragment pack= fSourceFolder.createPackageFragment("org.eclipse.osgi.util", false, null);
@@ -73,7 +73,7 @@
 
 	@After
 	public void tearDown() throws Exception {
-		JavaProjectHelper.clear(fJProject1, ProjectTestSetup.getDefaultClasspath());
+		JavaProjectHelper.clear(fJProject1, projectSetup.getDefaultClasspath());
 		ISearchResultViewPart searchResultView= NewSearchUI.getSearchResultView();
 		if (searchResultView != null) {
 			searchResultView.getSite().getPage().hideView(searchResultView);
diff --git a/org.eclipse.jdt.ui.tests/ui/org/eclipse/jdt/ui/tests/search/ParticipantTest.java b/org.eclipse.jdt.ui.tests/ui/org/eclipse/jdt/ui/tests/search/ParticipantTest.java
index 2f7cedb..708c754 100644
--- a/org.eclipse.jdt.ui.tests/ui/org/eclipse/jdt/ui/tests/search/ParticipantTest.java
+++ b/org.eclipse.jdt.ui.tests/ui/org/eclipse/jdt/ui/tests/search/ParticipantTest.java
@@ -46,7 +46,7 @@
 public class ParticipantTest {
 
 	@Rule
-	public JUnitSourceSetup projectsetup = new JUnitSourceSetup(new TestExtensionPoint());
+	public JUnitSourceSetup projectSetup = new JUnitSourceSetup(new TestExtensionPoint());
 
 	static class TestExtensionPoint extends SearchParticipantsExtensionPoint {
 		@Override
diff --git a/org.eclipse.jdt.ui.tests/ui/org/eclipse/jdt/ui/tests/search/SearchLeakTest.java b/org.eclipse.jdt.ui.tests/ui/org/eclipse/jdt/ui/tests/search/SearchLeakTest.java
index ecd16b6..da9dd0f 100644
--- a/org.eclipse.jdt.ui.tests/ui/org/eclipse/jdt/ui/tests/search/SearchLeakTest.java
+++ b/org.eclipse.jdt.ui.tests/ui/org/eclipse/jdt/ui/tests/search/SearchLeakTest.java
@@ -48,7 +48,7 @@
 public class SearchLeakTest extends LeakTestCase {
 
 	@Rule
-	public LeakTestSetup projectsetup = new LeakTestSetup();
+	public LeakTestSetup projectSetup = new LeakTestSetup();
 
 	@Test
 	public void testRemoveSearchQueries() throws Exception {
diff --git a/org.eclipse.jdt.ui.tests/ui/org/eclipse/jdt/ui/tests/search/SearchLeakTestWrapper.java b/org.eclipse.jdt.ui.tests/ui/org/eclipse/jdt/ui/tests/search/SearchLeakTestWrapper.java
index 7a7112e..51a0b17 100644
--- a/org.eclipse.jdt.ui.tests/ui/org/eclipse/jdt/ui/tests/search/SearchLeakTestWrapper.java
+++ b/org.eclipse.jdt.ui.tests/ui/org/eclipse/jdt/ui/tests/search/SearchLeakTestWrapper.java
@@ -34,7 +34,7 @@
 public class SearchLeakTestWrapper {
 
 	@Rule
-	public LeakTestSetup projectsetup = new LeakTestSetup();
+	public LeakTestSetup projectSetup = new LeakTestSetup();
 
 	SearchLeakTest fTest;
 
diff --git a/org.eclipse.jdt.ui.tests/ui/org/eclipse/jdt/ui/tests/search/TreeContentProviderTest.java b/org.eclipse.jdt.ui.tests/ui/org/eclipse/jdt/ui/tests/search/TreeContentProviderTest.java
index 5714bdd..276be88 100644
--- a/org.eclipse.jdt.ui.tests/ui/org/eclipse/jdt/ui/tests/search/TreeContentProviderTest.java
+++ b/org.eclipse.jdt.ui.tests/ui/org/eclipse/jdt/ui/tests/search/TreeContentProviderTest.java
@@ -54,7 +54,7 @@
 public class TreeContentProviderTest {
 
 	@Rule
-	public JUnitSourceSetup projectsetup = new JUnitSourceSetup();
+	public JUnitSourceSetup projectSetup = new JUnitSourceSetup();
 
 	private LevelTreeContentProvider fProvider;
 	private JavaSearchResult fResult;
diff --git a/org.eclipse.jdt.ui.tests/ui/org/eclipse/jdt/ui/tests/search/TreeContentProviderTestWrapper.java b/org.eclipse.jdt.ui.tests/ui/org/eclipse/jdt/ui/tests/search/TreeContentProviderTestWrapper.java
index b0eae0f..2393e63 100644
--- a/org.eclipse.jdt.ui.tests/ui/org/eclipse/jdt/ui/tests/search/TreeContentProviderTestWrapper.java
+++ b/org.eclipse.jdt.ui.tests/ui/org/eclipse/jdt/ui/tests/search/TreeContentProviderTestWrapper.java
@@ -36,7 +36,7 @@
 	TreeContentProviderTest fTest;
 
 	@Rule
-	public JUnitSourceSetup projectsetup = new JUnitSourceSetup();
+	public JUnitSourceSetup projectSetup = new JUnitSourceSetup();
 
 	@Before
 	public void setUp() throws Exception {
diff --git a/org.eclipse.jdt.ui.tests/ui/org/eclipse/jdt/ui/tests/search/WorkspaceReferenceTest.java b/org.eclipse.jdt.ui.tests/ui/org/eclipse/jdt/ui/tests/search/WorkspaceReferenceTest.java
index 1fc3f08..cb80e66 100644
--- a/org.eclipse.jdt.ui.tests/ui/org/eclipse/jdt/ui/tests/search/WorkspaceReferenceTest.java
+++ b/org.eclipse.jdt.ui.tests/ui/org/eclipse/jdt/ui/tests/search/WorkspaceReferenceTest.java
@@ -28,7 +28,7 @@
 public class WorkspaceReferenceTest {
 
 	@Rule
-	public JUnitSourceSetup projectsetup = new JUnitSourceSetup();
+	public JUnitSourceSetup projectSetup = new JUnitSourceSetup();
 
 	@Test
 	public void testSimpleMethodRef() throws Exception {
diff --git a/org.eclipse.jdt.ui.tests/ui/org/eclipse/jdt/ui/tests/wizardapi/NewTypeWizardTest.java b/org.eclipse.jdt.ui.tests/ui/org/eclipse/jdt/ui/tests/wizardapi/NewTypeWizardTest.java
index 479356a..d136b93 100644
--- a/org.eclipse.jdt.ui.tests/ui/org/eclipse/jdt/ui/tests/wizardapi/NewTypeWizardTest.java
+++ b/org.eclipse.jdt.ui.tests/ui/org/eclipse/jdt/ui/tests/wizardapi/NewTypeWizardTest.java
@@ -70,7 +70,7 @@
 	private IPackageFragmentRoot fSourceFolder;
 
 	@Rule
-	public ProjectTestSetup projectsetup = new ProjectTestSetup();
+	public ProjectTestSetup projectSetup = new ProjectTestSetup();
 
 	@Before
 	public void setUp() throws Exception {
@@ -98,14 +98,14 @@
 		StubUtility.setCodeTemplate(CodeTemplateContextType.ANNOTATIONBODY_ID, "/* annotation body */\n", null);
 
 
-		fJProject1= ProjectTestSetup.getProject();
+		fJProject1= projectSetup.getProject();
 		fSourceFolder= JavaProjectHelper.addSourceContainer(fJProject1, "src");
 	}
 
 
 	@After
 	public void tearDown() throws Exception {
-		JavaProjectHelper.clear(fJProject1, ProjectTestSetup.getDefaultClasspath());
+		JavaProjectHelper.clear(fJProject1, projectSetup.getDefaultClasspath());
 	}
 
 	@Test