Class LauncherFactory

java.lang.Object
org.junit.platform.launcher.core.LauncherFactory

@API(status=STABLE, since="1.0") public class LauncherFactory extends Object
Factory for creating Launcher instances by invoking create() or create(LauncherConfig).

By default, test engines are discovered at runtime using the ServiceLoader mechanism. For that purpose, a text file named META-INF/services/org.junit.platform.engine.TestEngine has to be added to the engine's JAR file in which the fully qualified name of the implementation class of the TestEngine interface is declared.

By default, test execution listeners are discovered at runtime via the ServiceLoader mechanism and are automatically registered with the Launcher created by this factory. Users may register additional listeners using the Launcher.registerTestExecutionListeners(TestExecutionListener...) method on the created launcher instance.

For full control over automatic registration and programmatic registration of test engines and listeners, supply an instance of LauncherConfig to create(LauncherConfig).

Since:
1.0
See Also:
  • Method Details

    • openSession

      @API(status=EXPERIMENTAL, since="1.8") public static LauncherSession openSession() throws org.junit.platform.commons.PreconditionViolationException
      Factory method for opening a new LauncherSession using the default LauncherConfig.
      Throws:
      org.junit.platform.commons.PreconditionViolationException - if no test engines are detected
      Since:
      1.8
      See Also:
    • openSession

      @API(status=EXPERIMENTAL, since="1.8") public static LauncherSession openSession(LauncherConfig config) throws org.junit.platform.commons.PreconditionViolationException
      Factory method for opening a new LauncherSession using the supplied LauncherConfig.
      Parameters:
      config - the configuration for the session and the launcher; never null
      Throws:
      org.junit.platform.commons.PreconditionViolationException - if the supplied configuration is null, or if no test engines are detected
      Since:
      1.8
      See Also:
    • create

      public static Launcher create() throws org.junit.platform.commons.PreconditionViolationException
      Factory method for creating a new Launcher using the default LauncherConfig.
      Throws:
      org.junit.platform.commons.PreconditionViolationException - if no test engines are detected
      See Also:
    • create

      @API(status=EXPERIMENTAL, since="1.3") public static Launcher create(LauncherConfig config) throws org.junit.platform.commons.PreconditionViolationException
      Factory method for creating a new Launcher using the supplied LauncherConfig.
      Parameters:
      config - the configuration for the launcher; never null
      Throws:
      org.junit.platform.commons.PreconditionViolationException - if the supplied configuration is null, or if no test engines are detected registered
      Since:
      1.3
      See Also: