package automation; import com.intuit.karate.junit5.Karate; import org.apache.commons.io.FileUtils; import org.junit.jupiter.api.Test; import static org.junit.jupiter.api.Assertions.*; import com.intuit.karate.Results; import com.intuit.karate.Runner; import java.io.File; import java.util.ArrayList; import java.util.Collection; import java.util.List; import net.masterthought.cucumber.Configuration; import net.masterthought.cucumber.ReportBuilder; public class ExamplesTest { @Test public void testParallel() { Results results=Runner.path("classpath:automation").outputCucumberJson(true).outputJunitXml(true).parallel(1); assertEquals(0,results.getFailCount(),results.getErrorMessages()); generateReport(results.getReportDir()); } public static void generateReport(String karateOutputPath) { Collection jsonFiles = FileUtils.listFiles(new File(karateOutputPath), new String[] {"json"}, true); List jsonPaths = new ArrayList<>(jsonFiles.size()); jsonFiles.forEach(file -> jsonPaths.add(file.getAbsolutePath())); Configuration config = new Configuration(new File("target"), "MDD_TestAutomation"); ReportBuilder reportBuilder = new ReportBuilder(jsonPaths, config); reportBuilder.generateReports(); } }