JBehave is a framework for Behaviour-Driven Development (BDD). BDD is an evolution of test-driven development (TDD) and acceptance-test driven design, and is intended to make these practices more accessible and intuitive to newcomers and experts alike. It shifts the vocabulary from being test-based to behaviour-based, and positions itself as a design philosophy.

You can find out more about behaviour-driven development on behaviour-driven.org. Newcomers are encouraged to start from Introducing BDD.

Features of JBehave 2 include:

  • Scenario runner - runs executable scenarios using text-based input, with auto-conversion of string arguments to any parameter type (including generic types) via custom parameter converters.
  • Scenario steps defined using Java 5 annotations that match the scenarios
  • Scenario reporter - outputs scenarios executed in human-readable form
  • Scenario can be run as JUnit tests, providing easy integration with your favourite IDE
  • Auto-generation of pending steps so the build is not broken by a missing step
  • Ant integration: allows scenarios to be run via Ant task
  • Maven integration: allows scenarios to be run via Maven plugin at given build phase

This documentation is primarily to help users getting started and as a reference development guide for each release, containing the javadoc and the project information. More information can be found in JBehave website.