Skip to main content

Build-Log Diagnostics

Tune how much the SpecBinder annotation processor prints to the build log via the verbosity option. This is compile-time output — run mvn test-compile (or mvn test) and watch the log during generation.

Source: examples/going-further/example-7 on GitHub.

What this demonstrates

  • @Gherkin2JUnitOptions(verbosity = Verbosity.VERBOSE) raises the processor's build-log detail
  • Levels are cumulative — each includes everything from the levels below it

The verbosity levels

LevelWhat it emits
SILENTOnly error diagnostics — no banner, warnings, headers, or summary (quiet CI on success)
NORMAL (default)Errors, warnings, the startup banner, and the end-of-round summary
VERBOSEAdds per-class processing headers, per-feature progress, the resolved spec path per class, and skipped/filtered work
DEBUGAdds full stack traces, parsed Gherkin AST summaries, JavaPoet code-model summaries, and per-step decisions

The marker class

@Gherkin2JUnit("specs/ShoppingCart.specb")
@Gherkin2JUnitOptions(verbosity = Verbosity.VERBOSE)
public abstract class ShoppingCartFeature {
}

Everything the processor prints happens while javac runs the annotation processor — there's no runtime component. The generated test itself is ordinary JUnit 5 and runs like any other example.

Run it

cd examples/going-further/example-7
mvn test