JBehave is no exception to the rule that every type of test needs a runner. In the previous chapters, we used JUnit and TestNG runners. While neither of those needed any special configuration, JBehave is a bit more demanding and forces us to create a class that will hold all the configuration required for running stories.
The following is the Runner code that we'll use throughout this chapter:
public class Runner extends JUnitStories { @Override public Configuration configuration() { return new MostUsefulConfiguration() .useStoryReporterBuilder(getReporter()) .useStoryLoader(new LoadFromURL()); } @Override protected List<String> storyPaths() { String path = "stories/**/*.story"; return new StoryFinder().findPaths( CodeLocations.codeLocationFromPath("").getFile(), ...