【问题标题】:Using allure with JBehave and Lettuce将诱惑与 JBehave 和生菜一起使用
【发布时间】:2015-04-24 06:42:36
【问题描述】:

我们有 2 个相当大的自动化项目正在进行,都使用 BDD。一种是在 Lettuce 中用于桌面应用程序,另一种是用于使用 JBehave 的网站(我们刚刚开始使用 Web 项目)。

我们已经尝试使用 Thucydides 为我们的 JBehave 项目报告,并开始使用它来实现测试。然而,我们遇到了 Allure,它看起来好多了,让我们可以使用标准的 JBehave 框架,而不需要依赖于我们自己未知问题的某人的代码。幸运的是,我们很早就找到了 Allure。

2 个问题:

1) 我们花了 2 天时间尝试让 Allure 与 JBehave 一起工作,但 GitHub 上的唯一示例运行不佳(所有场景一起报告,没有按个别故事或场景细分)。此外,JBehave 没有 @AfterStep 装饰器,我们需要在每一步之后保存屏幕截图,无论成功与否。修昔底德的所有错误都照顾到了这一点。倾城有类似的东西吗?如果没有,那么至少有一个工作示例说明如何在从 JBehave 运行时正确报告故事和场景?

2) 我还没有尝试过,但看起来没有生菜 (Python) 的适配器。有人可以推荐一种使用生菜制作 Allure 报告的方法吗?

非常感谢!!

【问题讨论】:

标签: jbehave lettuce allure


【解决方案1】:

Allure 还不支持 JBehaveLettuce。但是你可以自己实现这样的适配器。

第一步,您需要阅读文档中的以下部分https://github.com/allure-framework/allure-core/wiki#development。然后,如果您准备好做出贡献,则应遵循以下说明:

JBehave

我们已经有了 Java 适配器。所以你只需要添加 allure-java-adaptor-api 模块作为依赖,然后实现 JBehave 监听器。

生菜

有相同的。您可以使用 allure-python 绑定,而您所需要的只是实现 Lettuce 处理程序。 Python 团队将把绑定(又名allure-python-adaptor-api)移动到单独的模块,你可以通过https://github.com/allure-framework/allure-python/issues/63 中的评论来强制它

所以,如果您有任何问题/建议,也可以使用我们的 gitter 聊天室 (https://gitter.im/allure-framework/allure-core) 或我们的邮件列表 (allure@yandex-team.ru)

希望对你有帮助。

【讨论】:

    【解决方案2】:

    要实现 JBehave 和 Allure 之间的集成,您可以创建自己的 org.jbehave.core.reporters.StoryReporter 实现。通过这个接口中的方法,您可以触发与 JBehave 抽象相对应的 Allure 事件。在我们的实现中,我们从例如触发TestSuite*Events StoryReporter#beforeStory()TestCase*Events 来自例如StoryReporter#afterScenario()

    需要注意的是,对于某些 JBehave 事件,您必须触发多个 Allure 事件。例如,对于一个失败的 jbehave 步骤,我们会触发以下诱惑事件:

    public class AllureStoryReporter implements StoryReporter {
    
    ... 
    
        @Override
        public void notPerformed(final String step) {
            getLifecycle().fire(new StepStartedEvent(step).withTitle(step));
            getLifecycle().fire(new StepCanceledEvent());
            getLifecycle().fire(new StepFinishedEvent());
        }
    }
    

    当然,创建的报告器需要注册才能在 JBehave 报告期间使用。

    这会产生全面的 Allure 报告。

    【讨论】:

      【解决方案3】:

      至少对于JBehave来说,从那时起支持was added

      【讨论】:

        猜你喜欢
        • 2015-07-28
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 2016-05-14
        • 1970-01-01
        • 1970-01-01
        • 2021-12-27
        相关资源
        最近更新 更多