package test.junitreports; import org.testng.ISuite; import org.testng.reporters.JUnitReportReporter; import org.testng.xml.XmlSuite; import java.io.File; import java.io.FilenameFilter; import java.util.ArrayList; import java.util.List; public class LocalJUnitReportReporter extends JUnitReportReporter implements TestsuiteRetriever { private List<Testsuite> testsuites = new ArrayList<>(); @Override public void generateReport(List<XmlSuite> xmlSuites, List<ISuite> suites, String defaultOutputDirectory) { super.generateReport(xmlSuites, suites, defaultOutputDirectory); String dir = defaultOutputDirectory + File.separator + "junitreports"; File directory = new File(dir); File[] files = directory.listFiles(new FilenameFilter() { @Override public boolean accept(File dir, String name) { return name.endsWith(".xml"); } }); testsuites.addAll(LocalJUnitXMLReporter.getSuites(files)); } public Testsuite getTestsuite(String name) { for (Testsuite suite : testsuites) { if (suite.getName().equals(name)) { return suite; } } return null; } }