Sometimes it is useful to know if all the Steps in a Scenario have been matched (which is fast) before attempting to run it (which may be very slow). For example, as we have learnt to use JBehave we have had need to refactor our Step definitions. Our JBehave tests aren't run much more often than daily at the moment, and it isn't reasonable to run them all before committing, due in both cases to the length of time needed to run them. Compounding that with other possible fires in the build chain, it can take quite some time before we realise that a change to a step definition has broken a Scenario.
What we'd like is a way to (relatively) quickly dry-run our Scenarios, to confirm that each Step has at least been matched.
One possibility that would allow us to do this would be if the Configuration passed into runScenarioSteps could provide the initial State, I'm thinking it would then be quite easy for the State to skip running the steps and just determine whether they had been matched?
Added StepsConfiguration.doDryRun(boolean) method to control dry run mode.