问题标签 [cucumber-java]
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 - 从 Java 类运行功能
我正在尝试进行单元测试来测试我的黄瓜格式化程序。有没有办法让我从 java 类运行 .feature 文件?最初我打算进行 testng 单元测试,但我不知道如何运行 .feature 文件。
cucumber-jvm - 来自库的自定义格式化程序
我知道要使用自定义记者需要--format
fully.qualified.name.of.MyFormatter
。但是我有一个在罐子里的自定义格式化程序。我该如何使用它?有没有CucumberOptions
我可以使用的隐藏?
cucumber - 一个文件中 Cucumber 测试场景的最大/最佳数量
我有一个包含超过 66 个场景的 Cucumber 功能文件!功能文件的标题确实代表了场景的全部内容。
但是 66(200 步)感觉是一个很大的数字。这是否表明我的专题标题过于宽泛?
一个功能文件中最多应该有多少个场景(从最佳实践的角度来看)?
提前致谢 :)
spring-boot - 黄瓜 + TestNG + SpringBoot
跑者类:
步骤定义类:
}
filterChainProxy 和 wac 没有自动装配,为什么?
谢谢你的帮助。
java - 我无法在黄瓜类 step_definitions.LoginSteps 中实例化我的测试步骤没有空的构造函数
运行功能测试时出现错误。这与登录页面中的 webdriver 构造函数有关吗?我无法弄清楚为什么我会收到此错误:
cucumber.runtime.CucumberException:类 step_definitions.LoginSteps 没有空构造函数。如果您需要 DI,请将 cucumber-picocontainer 放在类路径中...
我的 pom info.cukes cucumber-picocontainer 1.2.4 中有 picocontainter
这是我的登录页面
java - 从命令行运行时未找到黄瓜步骤定义
一直在关注 Java 的黄瓜书,我正在处理的这个例子与第 2 章中的非常相似。这是在 cmd 行上,因为我现在不想合并到 IDE 中。
测试步骤:
我在@Given 上试过“abc”、“^abc”、“give abc”...
我正在使用以下 bat 文件来驱动它,并且步骤定义会编译并且类文件就在那里。我在 -g (胶水)选项上意识到包名称是参数值,所以我尽可能简单,但我发现了 0 个场景。bat文件很简单:
我始终得到以下结果:
显然 CLI 正在查找功能文件,但未找到已编译的步骤定义。怀疑这是一个类路径问题。我提供了额外的目录并移动了步骤定义文件。CLI 没有获取功能文件并将其与编译的定义匹配。提前谢谢。很多时候打出这些问题,解决方案就实现了,但事实并非如此。
如果 *.feature 文件是 cucumber 运行的要求,并且即使 junit 挂钩到 cucumber.class 测试运行器,它们也必须对应于编译的步骤定义,那么本书可能会留下更少的空间不确定性。这本书的论坛看起来很薄。可能需要去github或者源代码所在的地方。
maven - 直接从可执行 jar 运行 Cucumber 测试
我有一个带有黄瓜和 maven 的项目,我也在使用 JUnit。
我能够从 Eclipse 成功运行和构建我的项目。
现在我想从另一个系统中的命令行运行测试,它(应该)没有安装 eclipse 或 cucumber。我有一个想法,我们可以从 jar 创建一个 JAR,我们可以通过 java cli 命令运行测试。
下面是我试图从中运行测试的组合,我也在粘贴 pom.xml 和 RunCukesTest.java 文件。
pom.xml
RunCukesTest.java
- 我在类路径中添加了 JUNIT Jar。
我以两种方式生成罐子,
1)使用 -> 项目 -> 导出 -> JAR 文件导出 JAR 在最后一步中选择 MAIN 类为:RunCukesTest 因为我在这里为入口点定义了主方法(我们在这个类中需要这个主方法吗???)
导出后,我在命令下运行,
1.1java -jar xyz.jar
我收到错误:找到 NoClassDef:org/junit/runner/JUnitCore
所以我这样运行:
1.2java -cp xyz.jar;junit-4.12.jar org.junit.runner.JUnitCore
它说,
它仍然没有工作,所以我最后附加了 RunCukesTest 文件命名空间,
1.3java -cp xyz.jar;junit-4.12.jar org.junit.runner.JUnitCore se.stepDefinations.RunCukesTest
它给了我错误:类型 cucumber.api.junit.Cucumber 不存在
2) 所以我放弃了导出 jar 的选项,现在我正在尝试使用来自 maven Build 的 JAR。我选择了使用 Maven Build 运行的 POM,它在目标文件夹中创建了 2 个 jar,
1 名称为 xyz-0.0.1-SNAPSHOT,大小为 16kb,另一个名称为
xyz-0.0.1-SNAPSHOT-jar-with-dependencies,大小为 33mb
1)我使用依赖项运行更大的文件
它给了我信息:
没有功能目录的路径
2)所以我尝试将命名空间附加到 RunCukesTest 文件,
我收到一个错误:找不到文件或目录
,当然正如错误所说,它试图在目标文件夹中找到一个功能。
同样,我想在任何其他计算机(如可执行文件)中独立于任何此类项目文件依赖项运行 JAR。
任何帮助,将不胜感激。谢谢。
java - 黄瓜 Java 截图
有没有办法在 Java Cucumber 的步骤之间截屏?
我有以下情况:
我想为场景的某些步骤截屏。
我目前正在“之后”方法中截取屏幕截图。
正如预期的那样,这只是为最后一步捕获图像。
如何捕获其他 2 个步骤的图像并以与“之后”方法相同的方式嵌入图像?
我尝试创建一个新方法来截取屏幕截图并在需要时调用该方法。但是,除了“之后”中指定的方法之外,任何其他方法都可以将场景作为参数吗?
我该怎么办?
java - 黄瓜报告出错
我正在使用 Cucumber报告 api来获得更好的报告。我的项目不是 Maven 项目,现在无法更改项目结构。所以我添加了对我的项目的所有依赖项,但现在仍然出现“java.lang.IllegalArgumentException:文件'target/cucumber.json'不包含功能!”之类的错误。
所有添加的 jar 和版本如下所示。
我还在这里添加了我的 runner 类,这可能有助于调试。
我观察到 feature-overview.html 是在文件夹结构下生成的,但是当我打开此文件时它已损坏,它在此文件上显示此错误。
cucumber - cucumber + java : 将第 1 步返回的参数传递给第 2 步
我是黄瓜新手。我们有以下通过黄瓜实现 UI 自动化的用例。
请考虑以下示例。
在TestNg中,
现在我们正在转向黄瓜,我们需要在黄瓜中完成上述示例。
特点:表格。
场景:登录到应用程序
给定创建名为“formname”的表单,
然后搜索“formname”</p>
我们面临的问题 -> 在第 1 步中返回的表单名,我们不知道如何将其传递给第 2 步。在场景中,我们需要将此表单名称传递给在各个类中实现的不同步骤定义。
我试图在网上搜索,但没有找到任何特定于我们需要的东西。
如果有人能给我们一些指示/建议,那将是很大的帮助。