问题标签 [gherkin]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
cucumber - 我在哪里可以找到 Gherkin 语言规范/指南?
我正在尝试找出 Gherkin 中所有可用的语法/格式,例如关于多行参数以及我还不知道的所有其他内容。
不过,在挖掘 Google 搜索结果之后,似乎综合指南位于此处:
我认为这很好,它有一个链接到一个据称描述多行参数和其他参数的页面,但它把我带到了 404 Not found 相反 =(.
有没有人有更好的建议在哪里阅读这个?
编辑:强调我已经做了很多谷歌搜索。它提供了一些相当不错的站点,例如specflow和cuke4ninja,但没有一个提供对 Gherkin 的全面描述。如果有人通过谷歌搜索找到了这个问题的答案,那么请随时称我为谷歌新手,欢迎提出改进建议。
ruby-on-rails - 黄瓜耙黄瓜:好的 - 错误
我运行时遇到错误:rake cucumber:ok 你能告诉我如何解决以下错误吗?
我正在使用的 Gem 版本:
我运行时的错误:rake cucumber:ok
features/creating_projects.feature 的内容
我解决了这个问题:
在 features/creating_projects.feature 文件中,我有“Scenarios:”,它应该是“Scenario:”。这就是错误的原因。
bdd - Behat 和输入验证场景中的 Gherkin
我在 Behat 中使用 Gherkin,但在验证场景中遇到了输入问题。这是我写的场景的例子,但是Behat不明白标签中的变量定义<variable>
和测试无效输入(如标签的特殊字符)之间的区别<testspecialchar>
场景大纲: - 输入变量中的输入不正确 - 给定用户使用用户名“sh”和密码“123”登录 - 当用户输入不正确的数据时<input variable>
- 然后用户将拥有
例子:
任何人都可以尝试过这个并解决这个问题吗?感谢支持:) Shimaa
ruby - Cucumber 特征和步骤定义
我是黄瓜测试的新手。
我创建了两个功能文件:
并将我的步骤定义放在 step_definitions 文件夹中:
似乎 Cucumber 在所有 .rb 文件中查找步骤信息。
无论如何限制该功能以查看特定的步骤定义文件?
我为什么要这样做的原因是因为我得到了不明确的匹配错误,即使我使用了 --guess 标志。
我为什么要这样做是出于以下原因。我正在测试一个 CMS,并希望在不同的功能中测试每种不同的内容类型(事件和合作伙伴)。
事件.功能
合作伙伴特征
只关注两种情况下的“然后我应该看到内容”,就会发生错误,因为在 .rb 文件中我需要包含:
合作伙伴.rb
事件.rb
这意味着存在“我应该看到内容”的模糊匹配。
我知道有不同的结构方式,即我可以创建一个内容功能,并使用场景大纲:
但我不想这样做,因为我想将每种内容类型封装在它们自己的测试功能中。
所以基本上我需要根据我正在测试的功能来研究如何运行特定的步骤文件。
syntax - 如何在 Gherkin 中阻止评论?
在 gherkin 语法中(由 Cucumber 和 SpecFlow 使用,我可以通过在其前面加上 '#' 来注释掉一行
有没有办法阻止评论多行?
cucumber - 使用 JRuby 的 Cucumber 的奇怪输出
我将 JRuby 1.6.3 与 Cucumber 1.0.2 一起使用。当我运行我的功能(jruby -S cucumber features\add_two_numbers.feature)时,我得到:
输出中带有箭头和方括号的数字是什么?我该如何摆脱它们?
bdd - Gherkin 特征文件的漂亮输出
我们正在 Gherkin 中构建规范,我们希望将功能文件呈现给业务利益相关者。我们如何以某种“漂亮”格式导出所有功能文件?
例如:
- 生成包含所有特征的文档
- 或将功能集成到其他文档中
- 或在门户网站上发布功能文件(格式良好)
cucumber - 在 Specflow 中跨多个场景大纲共享一组通用示例
是否可以在 Specflow 中跨多个场景大纲共享一组通用示例,而无需为每个大纲复制一组示例?
例如,请原谅点头的例子,但这里Examples
每个都重复Scenario Outline
,我想知道是否可以声明Examples
一次并为每个使用它们Scenario Outline
?
cucumber - 是否有任何非开发人员工具来编辑小黄瓜文件?
Gherkin 语法文件只是纯文本,因此可以使用任何编辑器,例如记事本。但是,我们使用它的更重要的事情之一是提供样本数据表。如果没有良好的格式化选项,文件将变得难以阅读。
有一些很好的工具(参见:How to get Gherkin syntax highlighting for .feature files in Visual Studio?)用于 Visual Studio,例如 specflow.org 或https://github.com/henritersteeg/cuke4vs。在 Cucumber IDE 中讨论了使用 eclipse 的开发人员的另一种选择,用于使用自动完成功能编写功能?但是我不想要求为我们的业务分析师安装它。
这是一个语法高亮文件(http://productive.me/develop/cucumbergherkin-syntax-highlighting-for-notepad/),可以导入notepad++,但它对表格格式没有任何作用。
对于允许非开发人员有效地编辑 .feature gherkin 文件,我可能会错过任何其他选项吗?
automated-tests - 使用 SpecFlow 进行端到端回归测试
我们正在使用 BDD 并使用 SpecFlow 来推动我们的开发 (ATDD)。
我们的 QA 团队希望定义他们自己的“端到端回归测试”(在 Gherkin/SpecFlow 中)并重用我们已经定义的步骤。
(请注意——我知道这不是一个很好的例子,但它应该提供足够的细节)
测试可能包括..
- 登录
- 搜索产品
- 选择要购买的产品
- 创建订单
- 选择交付选项。
- 提交订单。
- 取消订单。
这将暗示一个场景,如..
假设我在
搜索产品时已登录
并选择要购买的产品
并创建订单
并选择交货选项
并提交订单
并取消订单
然后??!!
这显然是错误的,因为我们没有在每一步检查输出。
因此,这可以作为一系列场景来解决:
场景 1:
假设我已登录,
当我搜索产品时
,我会看到产品列表
场景 2:
当我选择要购买的产品时,
我可以创建订单
场景 3:
当我创建订单
并选择交货选项时
,我可以提交订单
等等等等
这样做的主要问题是似乎无法指定场景运行的顺序/顺序(nUnit 的特性?)。因为场景之间存在依赖关系(它们没有设置为已知的起点),所以它们必须按顺序运行。
我的问题是:
a) 我们是否要在圆孔中安装方形钉?!
b) 有谁知道是否有办法以这种方式使用 SpecFlow/Gherkin?
c) 或者有人知道有什么替代品吗?
非常感谢!