Bug 78491 JUnit tries to execute abstract classes [JUnit]
Starting with 3.1M3 the JUnit component suddenlty tries to execute tests from abstract classes: class abstract AbstractTestCase extends TestCase { public void testDefaultTestHere() {} } class ComponentWithDefaultTest extends AbsractTestCase { public void testComponentSpecificBehaviour() {} } In former releases only the fixtures of ComponentWithDefaultTest were executed, 3.1M3 tries now to instantiate AbstractTestCase and fails obviously.
org.eclipse.jdt.junit.core/src/org/eclipse/jdt/internal/junit/util/TestSearchEngine.java
}
	}
	
	private static List findTestCases(IJavaElement element, IProgressMonitor pm) throws JavaModelException {
		List found = new ArrayList();
		IJavaProject javaProject= element.getJavaProject();
		IType testCaseType= javaProject.findType("junit.framework.TestCase"); 
		IType[] subtypes= javaProject.newTypeHierarchy(testCaseType, getRegion(javaProject), pm).getAllSubtypes(testCaseType);
			
		if (subtypes == null)
		    throw new JavaModelException(new CoreException(new Status(IStatus.ERROR, JUnitPlugin.PLUGIN_ID, IJavaLaunchConfigurationConstants.ERR_UNSPECIFIED_MAIN_TYPE, JUnitMessages.getString("JUnitBaseLaunchConfiguration.error.notests"), null))); 
		for (int i = 0; i < subtypes.length; i++) {
			if (subtypes[i].getAncestor(element.getElementType()).equals(element))
			    found.add(subtypes[i]);
		}
		return found;
	}
	
	private static Region getRegion(IJavaProject javaProject) throws JavaModelException{
	    Region region = new Region();
	    IJavaElement[] elements= javaProject.getChildren();
	    for(int i=0; i<elements.length; i++) {
	        if (((IPackageFragmentRoot)elements[i]).isArchive())
	            continue;
	        region.add(elements[i]);
	    }
	    return region;
	}
	private static Object computeScope(Object element) throws JavaModelException {
		if (element instanceof IFileEditorInput)