问题标签 [cucumber-jvm]
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.
java - 黄瓜 jvm 的全局 BeforeAll Hook?
cucumber 的 ruby 版本支持全局的 before 钩子。在任何和所有场景运行之前,放置在 features/support 目录中的 *.rb 文件显然只被调用一次。见https://github.com/cucumber/cucumber/wiki/Hooks#global-hooks
这似乎是确保数据库(在测试期间以只读方式使用)在任何测试运行之前被填充(因此处于已知状态)的好方法。
Java 版本的 Cucumber 是否有类似的功能可用?
java - cucumber-jvm:拦截功能顶部的注释
我正在使用 Cucumber-JVM (Groovy),我想知道是否可以在功能之上拦截自定义注释。前任:
如果不可能,是否有在运行特定功能之前运行某些代码的替代方法(没有 @Before 与场景相关)。
cucumber - 如何在 Cucumber 场景中实现 If 条件
我有一个具体的场景如下:
如果我预先知道元素是否出现,我可以构建两种不同的场景,即元素何时出现和何时不出现。但是,在这种情况下,它可能存在也可能不存在。如果它存在,它应该按预期运行。
关于如何在 Cucumber 场景中实现这一点的任何建议?我正在使用 Cucumber-jvm。
jenkins-plugins - jenkins cucumber jvm 报告插件 java screenshots
我正在为黄瓜使用这个插件,我看到如果一个或多个步骤失败,你会在该步骤的报告中看到屏幕截图。如果没有失败,是否有办法为每个步骤提供屏幕截图?
intellij-idea - IntelliJ cucumber-jvm 插件不运行测试
运行 .feature 文件给我以下错误:
如果我通过 JUnit 测试调用该功能文件,它就可以工作。那么为什么它报告空测试套件呢?
jenkins - Jenkins 的 Cucumber Reports 插件:未正确处理步骤和标签
我有一个 Jenkins 构建,它从 jruby/cucumber 测试中获取 JSON 输出,并使用 Cucumber Reports 插件生成报告。该插件仅在功能文件的基础上为我提供明智的报告:也就是说,它可以告诉我功能文件是否通过,但不能告诉我任何给定的步骤。
当我期望这些步骤时,每个步骤都有此错误消息Result was missing for this step
我听说 cucumber-jvm 会发生这种情况,但我使用的是 jruby,据我所知,它与 cucumber-jvm 无关。
有什么见解吗?
groovy - 如何使用 groovy 在多个黄瓜步骤定义文件之间共享变量
我正在使用黄瓜 jvm 用 groovy 编写测试。到目前为止,我将所有步骤定义都放在一个文件中,并且一切正常。我现在正在寻找将步骤定义移动到单独的文件,因为我有很多文件。我遇到的问题是实例变量。我试图让我的步骤定义尽可能通用,所以任何用@when 注释的定义都会返回一个名为响应的对象,而任何用@then 注释的定义都会在响应上声明一些东西。我的问题是,有没有办法可以将这些存储在单独的文件中?我已经阅读了一些关于“世界”的内容,但我不确定这是否是我正在寻找的,尽管查看了 github 上的示例项目(https://github.com/cucumber/cucumber-jvm/blob/master/groovy/src/test/groovy/cucumber/runtime/groovy/compiled_stepdefs.groovy),我无法让它工作。
我试图实现的一个例子是这样的:
作为我的场景。然后我想要两个类共享变量,如下所示:
我知道我可以使用 spring 将变量注入到类中,但我想知道是否有另一种方法,以及我是否在使用“World”对象的正确轨道上。提前致谢
scala - 使用 Cucumber JVM 生成 ScalaCheck 测试 - 通用函数
为了避免 X & Y 问题,有一点背景:
我正在尝试建立一个 Web 项目,我将在其中复制业务逻辑服务器和客户端,显然是 Javascript 中的客户端和 Scala 中的服务器。我计划在 Cucumber 中编写业务逻辑,这样我就可以确保测试和功能在两边都对齐。最后,我想尝试将 ScalaCheck 和 JSCheck 引入其中,生成输入数据而不是指定数据。
基本上,这些语句的工作方式如下:
给定语句选择添加生成器。当语句指定函数以按顺序作用于这些值。然后语句获取输入数据和最终结果数据并运行一个属性。
目标是使这类东西可组合,因此您可以指定多个生成器、一组要在每个生成器上运行的操作,然后是一组属性,每个属性都将在输入和结果上运行。
已经在 Javascript(技术上是 Coffeescript)中完成了这项工作,当然使用动态语言很容易做到。基本上我希望能够在我的 scala 步骤定义中做的是,请原谅任意测试数据:
所以我想做的关键是创建一个特征 QuickCheckCucumberSteps,它将作为 API,实现 addGenerator、addAction 和 runProperty。
到目前为止,这是我粗略的,以及我被卡住的地方:
我的关键问题是,我想让注释块成为一个函数,它接受所有添加的操作,按顺序应用它们,然后运行并返回属性函数的结果。这是否可以用 Scala 的类型系统来表达,如果可以,我该如何开始?很高兴阅读并获得这个,但我至少需要一条前进的道路,因为我现在不知道如何表达它。如果我在这里想要做的不清楚,很高兴加入我的 Javascript 代码。
java - 无法在 Eclipse 中执行黄瓜 jvm 测试
我正在学习如何在我的新 java 项目中使用 cucumber-jvm 来做 BDD。我正在使用eclipse,我的项目结构如下:
我也在使用 gradle 并包含了 cucumber-core、cucumber-junit、cucumber-java 和 junit 依赖项。
我的 Runtests.java 看起来像:
在执行 RunTests.java 类时,我得到了initializationError:
maven - Maven 运行黄瓜特定的功能文件或文件夹
如何使用 maven命令行中的黄瓜功能选项。
在充满功能(测试)的树中,我试图只运行单个功能。就我而言 - 选定文件夹中的所有功能文件。
我尝试使用以下语法:
它运行所有测试。没有错误也没有评论。
我尝试了其他几种选择,但都没有奏效!
这里的任何帮助将不胜感激。