SearchForTestsTask (@NotNull TargetEnvironment targetEnvironment) { return new SearchingForTestsTask(getServerSocket(), getConfiguration(), myTempFile) { @Override protected void fillTestObjects(final Map<PsiClass, Map<PsiMethod, List<String>>> classes) throws CantRunException { final HashMap<PsiClass, Map<PsiMethod, List<String>>> fullClassList = new HashMap<>(); super.fillTestObjects(fullClassList); for (final PsiClass aClass : fullClassList.keySet()) { if (!ReadAction.compute(() -> TestNGUtil.hasTest(aClass))) { classes.put(aClass, fullClassList.get(aClass)); } } final GlobalSearchScope scope = getConfiguration().getConfigurationModule().getSearchScope(); final Project project = getConfiguration().getProject(); for (final AbstractTestProxy proxy : failedTests) { ApplicationManager.getApplication().runReadAction(() -> includeFailedTestWithDependencies(classes, scope, project, proxy)); } } }; }