Annotation Type CucumberOptions


@Retention(RUNTIME) @Target(TYPE) @API(status=STABLE) public @interface CucumberOptions
Configure Cucumbers options.
  • Nested Class Summary

    Nested Classes
    Modifier and Type
    Class
    Description
    static enum 
     
  • Optional Element Summary

    Optional Elements
    Modifier and Type
    Optional Element
    Description
    boolean
     
    Package to load additional glue code (step definitions, hooks and plugins) from.
    Either a URI or path to a directory of features or a URI or path to a single feature optionally followed by a colon and line numbers.
    Package to load glue code (step definitions, hooks and plugins) from.
    boolean
     
    Only run scenarios whose names match one of the provided regular expressions.
    Class<? extends ObjectFactory>
    Specify a custom ObjectFactory.
    Register plugins.
    boolean
    Publish report to https://reports.cucumber.io.
     
    Only run scenarios tagged with tags matching TAG_EXPRESSION.
  • Element Details

    • dryRun

      boolean dryRun
      Returns:
      true if glue code execution should be skipped.
      Default:
      false
    • features

      String[] features
      Either a URI or path to a directory of features or a URI or path to a single feature optionally followed by a colon and line numbers.

      When no feature path is provided, Cucumber will use the package of the annotated class. For example, if the annotated class is com.example.RunCucumber then features are assumed to be located in classpath:com/example.

      Returns:
      list of files or directories
      See Also:
      Default:
      {}
    • glue

      String[] glue
      Package to load glue code (step definitions, hooks and plugins) from. E.g: com.example.app

      When no glue is provided, Cucumber will use the package of the annotated class. For example, if the annotated class is com.example.RunCucumber then glue is assumed to be located in com.example.

      Returns:
      list of package names
      See Also:
      Default:
      {}
    • extraGlue

      String[] extraGlue
      Package to load additional glue code (step definitions, hooks and plugins) from. E.g: com.example.app

      These packages are used in addition to the default described in #glue.

      Returns:
      list of package names
      Default:
      {}
    • tags

      String tags
      Only run scenarios tagged with tags matching TAG_EXPRESSION.

      For example "@smoke and not @fast".

      Returns:
      a tag expression
      Default:
      ""
    • plugin

      String[] plugin
      Register plugins. Built-in plugin types: junit, html, pretty, progress, json, usage, unused, rerun, testng.

      Can also be a fully qualified class name, allowing registration of 3rd party plugins.

      Plugins can be provided with an argument. For example json:target/cucumber-report.json

      Returns:
      list of plugins
      See Also:
      • Plugin
      Default:
      {}
    • publish

      boolean publish
      Publish report to https://reports.cucumber.io.

      Returns:
      true if reports should be published on the web.
      Default:
      false
    • monochrome

      boolean monochrome
      Returns:
      true if terminal output should be without colours.
      Default:
      false
    • name

      String[] name
      Only run scenarios whose names match one of the provided regular expressions.
      Returns:
      a list of regular expressions
      Default:
      {}
    • snippets

      Returns:
      the format of the generated snippets.
      Default:
      UNDERSCORE
    • objectFactory

      Class<? extends ObjectFactory> objectFactory
      Specify a custom ObjectFactory.

      In case a custom ObjectFactory is needed, the class can be specified here. A custom ObjectFactory might be needed when more granular control is needed over the dependency injection mechanism.

      Returns:
      an ObjectFactory implementation
      Default:
      io.cucumber.testng.NoObjectFactory.class