【问题标题】:JBehave with Serenity - report can't find test scenariosJBehave with Serenity - 报告找不到测试场景
【发布时间】:2018-01-23 22:35:15
【问题描述】:

使用 Jbehave,我的 runner 类扩展了 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() 方法?怎么做?

非常感谢!

【问题讨论】:

    标签: maven jbehave serenity-bdd


    【解决方案1】:

    我能够通过创建一个新的 Maven 项目来使其工作。 使用原型:'serenity-jbehave-archetype'。 将有一个继承 SerenityStories 的预先创建的空运行器类。 然后我将我的文件合并到这个新项目中。 至于跑步者类,我重写了方法 stepsFactory() 和 storyPaths() 以匹配我的步骤/故事。

    希望这是有道理的。谢谢!

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2023-03-15
      相关资源
      最近更新 更多