使用Jbehave,我的跑步者类扩展了JUnitStories,我可以使用以下内容生成普通样式的报告:
@Override
public Configuration configuration() {
Class<? extends Embeddable > embeddableClass = this.getClass();
return new MostUsefulConfiguration().useStoryLoader(new LoadFromClasspath(embeddableClass))
.useStoryControls(new StoryControls().doResetStateBeforeScenario(false).useStoryMetaPrefix("story_").useScenarioMetaPrefix("scenario_"))
.useStoryReporterBuilder(
new StoryReporterBuilder()
.withCodeLocation(CodeLocations.codeLocationFromClass(embeddableClass))
.withDefaultFormats().withFormats(CONSOLE, HTML).withFailureTrace(true)
.withFailureTraceCompression(true));
}
现在我想将JBehave与Serenity集成以获得更好看的报告^ _ ^。所以我改变了我的跑步者类来继承SerenityStories。添加依赖项并通过maven运行后,测试通过。但是,Serenity生成的报告始终会看到“0测试场景”。
我看到SerenityStories继承了JUnitStories,并且还覆盖了configuration()方法。
如何让Serenity看到我的测试场景?我需要以不同方式覆盖configuration()方法吗?怎么样?
非常感谢!
答案 0 :(得分:0)
我能够通过创建一个新的maven项目来使其工作。 使用了原型:&#39; serenity-jbehave-archetype&#39;。 将会有一个预先创建的&amp;继承SerenityStories的空转子类。 我刚刚将我的文件合并到这个新项目中。 至于跑步者类,我已经覆盖了方法stepsFactory()和storyPaths()来匹配我的步骤/故事。
希望有道理。谢谢!