@SuppressWarnings("unused") public static void main(String[] args) { // Discover and filter tests LauncherDiscoveryRequest request = LauncherDiscoveryRequestBuilder .request() .selectors(selectPackage("io.github.bonigarcia"), selectClass(DummyTest.class)) .filters(includeClassNamePatterns(".*Test")).build(); Launcher launcher = LauncherFactory.create(); TestPlan plan = launcher.discover(request); // Executing tests TestExecutionListener listener = new SummaryGeneratingListener(); launcher.registerTestExecutionListeners(listener); launcher.execute(request, listener); }
/** * Instance an engine and execute the test resources identified by the given {@code selectors} and * wrap the response in a listener so that we can make sense of what happened. The listener * exposes information about the test execution flow which the extension tests can assert against. * * @param selectors {@link DiscoverySelector} instances which will isolate test class or test * methods * @return a {@link RecordingExecutionListener} which encapsulates what the engine did */ public static RecordingExecutionListener execute(DiscoverySelector... selectors) { // instance an engine JupiterTestEngine testEngine = new JupiterTestEngine(); // discover the requested test resources LauncherDiscoveryRequest discoveryRequest = request().selectors(selectors).build(); RecordingExecutionListener listener = new RecordingExecutionListener(); // execute the discovered test resources TestDescriptor testDescriptor = testEngine.discover(discoveryRequest, UniqueId.forEngine(testEngine.getId())); testEngine.execute( new ExecutionRequest( testDescriptor, listener, discoveryRequest.getConfigurationParameters())); return listener; }
public static void main(String[] args) throws Exception { try (SocketChannel channel = openSocket()) { TestExecutionListener listener = createListener(channel); Launcher launcher = LauncherFactory.create(); launcher.registerTestExecutionListeners(listener); ObjectInputStream inputStream = openInput(); Map<String, List<String>> config = (Map<String, List<String>>) inputStream.readObject(); Set<File> roots = config.get("classpathRoots").stream() .map(File::new) .collect(Collectors.toSet()); LauncherDiscoveryRequest request = LauncherDiscoveryRequestBuilder.request() .selectors(selectClasspathRoots(roots)) .build(); launcher.execute(request); } }
private static int launch(ModuleReference moduleReference, Launcher launcher) { LauncherDiscoveryRequestBuilder builder = LauncherDiscoveryRequestBuilder.request(); builder.selectors(selectModule(moduleReference.descriptor().name())); long startTimeMillis = System.currentTimeMillis(); LauncherDiscoveryRequest launcherDiscoveryRequest = builder.build(); SummaryGeneratingListener summaryGeneratingListener = new SummaryGeneratingListener(); launcher.execute(launcherDiscoveryRequest, summaryGeneratingListener); long duration = System.currentTimeMillis() - startTimeMillis; TestExecutionSummary summary = summaryGeneratingListener.getSummary(); int failures = (int) summary.getTestsFailedCount(); if (failures == 0) { long succeeded = summary.getTestsSucceededCount(); String moduleName = moduleReference.descriptor().toNameAndVersion(); System.out.printf("[tester] Successfully tested %s: %d tests in %d ms%n", moduleName, succeeded, duration); } else { StringWriter stringWriter = new StringWriter(); summary.printTo(new PrintWriter(stringWriter)); summary.printFailuresTo(new PrintWriter(stringWriter)); System.out.println(stringWriter); } return failures; }
private void runClasses(Class<?>... classes) { final ClassSelector[] classSelectors = Stream.of(classes) .map(DiscoverySelectors::selectClass) .toArray(ClassSelector[]::new); final LauncherDiscoveryRequest request = LauncherDiscoveryRequestBuilder.request() .selectors(classSelectors) .build(); AllureJunit5AnnotationProcessor.setLifecycle(lifecycle); final Launcher launcher = LauncherFactory.create(); launcher.execute(request, new AllureJunit5(lifecycle)); }
private void runClasses(Class<?>... classes) { final ClassSelector[] classSelectors = Stream.of(classes) .map(DiscoverySelectors::selectClass) .toArray(ClassSelector[]::new); final LauncherDiscoveryRequest request = LauncherDiscoveryRequestBuilder.request() .selectors(classSelectors) .build(); final Launcher launcher = LauncherFactory.create(); launcher.execute(request, new AllureJunit5(lifecycle)); }
public static TestPlanExecutionReport runTests(Class<?> clazz) { Launcher launcher = LauncherFactory.create(); LauncherDiscoveryRequest request = LauncherDiscoveryRequestBuilder.request() .selectors(selectClass(clazz)) .build(); ExecutionReportListener listener = new ExecutionReportListener().addClassToSkip(clazz); launcher.execute(request, listener); return listener.getReport(); }
public ExitStatus execute(SummaryGeneratingListener listener, DiscoverySelector selector, ApplicationConfiguration applicationConfiguration, FilesLocator filesLocator) { ApplicationConfigurationResolver.setConfiguration(applicationConfiguration); FilesLocatorResolver.setFilesLocator(filesLocator); LauncherDiscoveryRequest request = LauncherDiscoveryRequestBuilder.request() .selectors(selector) .build(); Launcher launcher = LauncherFactory.create(); launcher.registerTestExecutionListeners(listener); launcher.execute(request); return listener.getSummary().getFailures().isEmpty() ? ExitStatus.SUCCESS : ExitStatus.FAILURE; }
private JupiterExecutionListener executeTests(LauncherDiscoveryRequest request) throws Exception { TestDescriptor testDescriptor = createTestDescriptorForCucumber( engine.discover(request, forEngine(engine.getId())), containers); eventRecorder.reset(); engine.execute(new ExecutionRequest(testDescriptor, eventRecorder, request.getConfigurationParameters())); return eventRecorder; }
private ExecutionEventRecorder executeTestMethods(Class<?> type, String[] methodNames) { //@formatter:off DiscoverySelector[] selectors = stream(methodNames) .map(methodName -> selectMethod(type, methodName)) .toArray(DiscoverySelector[]::new); //@formatter:on LauncherDiscoveryRequest request = request().selectors(selectors).build(); return executeTests(request); }
public ForeignClassLoaderLauncher(Launcher launcher, LauncherDiscoveryRequest launcherDiscoveryRequest) { this.launcher = launcher; this.launcherDiscoveryRequest = launcherDiscoveryRequest; }
protected ExecutionEventRecorder executeTests(LauncherDiscoveryRequest request) { TestDescriptor testDescriptor = discoverTests(request); ExecutionEventRecorder eventRecorder = new ExecutionEventRecorder(); engine.execute(new ExecutionRequest(testDescriptor, eventRecorder, request.getConfigurationParameters())); return eventRecorder; }
protected TestDescriptor discoverTests(LauncherDiscoveryRequest request) { return engine.discover(request, UniqueId.forEngine(engine.getId())); }
private ExecutionEventRecorder executeTestClass(Class<?> type) { LauncherDiscoveryRequest request = request().selectors(selectClass(type)).build(); return executeTests(request); }