Class Suite

java.lang.Object
io.karatelabs.core.Suite

public class Suite extends Object
Immutable suite configuration and execution engine.

Suite instances can only be created via Runner.Builder. All configuration fields are public final for inspection.

Example usage:

 SuiteResult result = Runner.path("features/")
     .tags("@smoke")
     .parallel(4);
 
  • Field Details

    • KARATE_JSON_SUBFOLDER

      public static final String KARATE_JSON_SUBFOLDER
      Subfolder for JSON output (JSONL events, etc.)
      See Also:
    • features

      public final List<Feature> features
    • env

      public final String env
    • tagSelector

      public final String tagSelector
    • threadCount

      public final int threadCount
    • parallel

      public final boolean parallel
    • dryRun

      public final boolean dryRun
    • configPath

      public final String configPath
    • outputDir

      public final Path outputDir
    • workingDir

      public final Path workingDir
    • outputHtmlReport

      public final boolean outputHtmlReport
    • outputJsonLines

      public final boolean outputJsonLines
    • outputJunitXml

      public final boolean outputJunitXml
    • outputCucumberJson

      public final boolean outputCucumberJson
    • backupReportDir

      public final boolean backupReportDir
    • outputConsoleSummary

      public final boolean outputConsoleSummary
    • systemProperties

      public final Map<String,String> systemProperties
    • listeners

      public final List<RunListener> listeners
    • listenerFactories

      public final List<RunListenerFactory> listenerFactories
    • driverProvider

      public final DriverProvider driverProvider
    • httpClientFactory

      public final HttpClientFactory httpClientFactory
    • skipTagFiltering

      public final boolean skipTagFiltering
    • lineFilters

      public final Map<String,Set<Integer>> lineFilters
    • scenarioName

      public final String scenarioName
    • debugInterceptor

      public final io.karatelabs.js.RunInterceptor<?> debugInterceptor
    • debugPointFactory

      public final io.karatelabs.js.DebugPointFactory<?> debugPointFactory
    • baseResource

      public final io.karatelabs.common.Resource baseResource
    • configResource

      public final io.karatelabs.common.Resource configResource
    • configEnvResource

      public final io.karatelabs.common.Resource configEnvResource
  • Method Details

    • run

      public SuiteResult run()
    • fireEvent

      public boolean fireEvent(RunEvent event)
    • getOutputDir

      public String getOutputDir()
    • getCallSingleCache

      public Map<String,Object> getCallSingleCache()
    • getCallSingleLock

      public ReentrantLock getCallSingleLock()
    • getLockManager

      public ScenarioLockManager getLockManager()
    • getScenarioExecutor

      public ExecutorService getScenarioExecutor()
    • getScenarioSemaphore

      public Semaphore getScenarioSemaphore()
    • acquireLane

      public void acquireLane()
    • releaseLane

      public void releaseLane()
    • getCurrentLaneName

      public String getCurrentLaneName()
    • abort

      public void abort()
    • isAborted

      public boolean isAborted()
    • getResult

      public SuiteResult getResult()
    • getResultListeners

      public List<ResultListener> getResultListeners()
    • getSystemProperties

      public Map<String,String> getSystemProperties()
      Get system properties for karate.properties.
    • getDriverProvider

      public DriverProvider getDriverProvider()
    • getPerfHook

      public PerfHook getPerfHook()
    • getHttpClientFactory

      public HttpClientFactory getHttpClientFactory()
    • isPerfMode

      public boolean isPerfMode()
    • isSkipTagFiltering

      public boolean isSkipTagFiltering()