0

您好我正在寻找 Meteor-cucumber\chimp 的预定义(通用)步骤定义。

我使用了 PHP 的 Behat(BDD 黄瓜框架)。有这个扩展和这个。这使您可以开箱即用地进行通用步骤定义。您不需要自己编写这些步骤定义。

下面是您从 Behat 获得的步骤定义列表。

行为-dl

4

2 回答 2

4

简答

这种 step-def 库不存在,我们(Chimp 的作者)不会添加它们,因为我们已经看到它们从长远来看是非常有害的。

看起来您想要编写测试脚本,在这种情况下,您最好使用带有 Mocha + Customer WebdriverIO 命令的 Chimp 而不是 Cucumber 来编写这些脚本。

长答案

具有简单语言场景和步骤的功能文件旨在发现和表达应用程序的领域。自然的自由格式文本鼓励您使用可以与整个团队一起使用的语言 - 也称为无处不在的领域语言。

当涉及到 Cucumber 时,您想犯一个最常见的错误,那就是将它用作 UI 测试工具。使用基于 UI 的步骤打破了普遍存在的语言原则。

步骤重用应该围绕业务领域,以便您创建一种无处不在的领域语言。如果您使用 UI 步骤而不是规范,您最终会在不知情的情况下产生技术债务。Gherkin 语法不容易重构,如果您更改步骤实现,则需要在多个地方进行更新。对于域问题,这通常不是什么大问题,但对于 UI 测试,您可能会大量重用步骤。

听起来您对良好的代码重用很感兴趣。如果您考虑一下,WebdriverIO 已经有一个很棒的 AP​​I,并且您想要使用的大多数步骤只是 API 的包装器。

与其创建这种无关的翻译,不如只用 Mocha 编写测试并直接访问 WebdriverIO 的 API。这样,您就拥有了完整的 JavaScript 语言来使用一些软件工程实践,而不是简单的 Gherkin 解析器。

WebdriverIO 还有一个很棒的自定义命令命令,允许您创建上面提到的所有方法。添加大量这些脚本的扩展文件将非常有用。

我们编写了一个包含最佳实践和一些注意事项和注意事项的存储库。特别是,您应该看到:

您可能还想阅读:

于 2015-12-28T17:58:53.527 回答
0

为了测试我的 UI,我将使用 Mocha。我不需要黄瓜规格。

作为任务运行器,我将使用 Chimp(Chimp 使用 webdriver.io)。

这是快速 Mocha+Chimp的操作方法

于 2015-12-30T17:15:00.193 回答