【问题标题】:Difference between cucumber and citrus framework黄瓜和柑橘框架的区别
【发布时间】:2018-06-18 12:07:39
【问题描述】:

对于我的功能和技术测试,我使用 cucumber,但我的新团队除了 cucumber :o 之外,还将使用 citrus 框架进行黄瓜测试。有什么不同?我可以在两者中使用相同的功能吗?为什么我们同时使用两者,我们能赢得什么?

感谢您的帮助

【问题讨论】:

  • (一个非常简单的解释)a) Cucumber - 行为驱动开发,您定义应用程序的行为(执行的测试)之前开始编码,b) Citrus 框架 - 执行自动化集成测试以检查您的 *已经编码 应用程序连接到外部服务的行为。范围完全不同。 Cucumber - 在您更改代码时验证行为,Citrus - 在您将一个 JMS 提供程序替换为另一个 JMS 提供程序时验证行为。
  • 谢谢。因此,如果我理解,范围是不同的,在两者上启动相同的测试是没有意义的?
  • 是的。我会这样看。

标签: continuous-integration cucumber integration-testing citrus-framework


【解决方案1】:

Cucumber 通过使用 Gherkin Given-When-Then 语法以功能规范的形式定义测试逻辑,使您能够遵循 BDD 概念。然后 Cucumber 使用 Java 和其他编程语言的单元测试代码使这些规范可执行。

Citrus 让您可以使用 Java 或 XML 编写集成测试,重点关注通过各种消息传输与客户端和服务器端通信的消息集成。

将 Cucumber 和 Citrus 结合起来是非常有用的,这样您就可以使用 Cucumber 来阅读 Gherkin 功能规范,并使用 Citrus 在测试中执行基于消息的集成逻辑来获得启用 BDD 的集成测试。

事实上,Cucumber 和 Citrus 完美融合。 Citrus 提供了预定义的 Cucumber BDD 步骤实现,用于通过不同的消息传输方式发送和接收消息。您还可以使用预定义的步骤实现在 Citrus 和 Cucumber 中使用 Selenium,这样您最终只需编写 Gherkin 功能规范,并且所有胶水代码都是开箱即用的。

以下是此设置的示例:https://github.com/christophd/citrus-demo-devoxx-be

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2011-09-15
    • 2016-10-14
    相关资源
    最近更新 更多