java - 在其他项目中重用 Cucumber-JVM 步骤定义

标签 java cucumber-jvm

如何在其他项目中重用 Cucumber-JVM 步骤定义来测试一些典型的 Web 操作。重点是我创建了一些 java 项目,只是使用典型场景操作的步骤定义实现,例如:

When I follow the link "*some_link*"
Then I should see following content "*some_content*" on page

而且我想在其他项目中重用这些定义(包括在类路径中),只是为了编写自己的简单场景。但是当我运行场景(作为 JUnit 测试)时,Cucumber 无法找到步骤定义。当我尝试扩展 Step Definitions 类时,它给了我一个错误,我无法扩展 Step Definition 类。 那么,是否可以重用步骤定义?如果可以,如何重用?

最佳答案

好吧,我找到了解决方案。这看起来很容易。

注解@CucumberOptions 有参数“glue”。使用此参数指向具有步骤定义的基础包会强制 Cucumber 在该基础包中进行搜索。测试运行程序将如下所示:

@RunWith(Cucumber.class)
@CucumberOptions(glue = { "com.example.stepdefspackage" })
public class Run{
}

关于java - 在其他项目中重用 Cucumber-JVM 步骤定义,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/12867492/

相关文章:

java - 如何根据Java中的命令行参数使 "if"条件自动改变?

swing - 在 Fest 中实现匹配器的 Groovy 闭包

java - 如何避免在每次测试之前执行注释?

java - 将列表合并为具有唯一元素的单个数组

java - Google 应用引擎运行缓慢

java - IntelliJ - 如何运行 main() - 运行总是引用测试文件夹

java - BDD 自动化与跨浏览器测试?

java - SessionNotFoundException : Session ID is null. 在调用 quit() 后使用 WebDriver? ( Selenium )

cucumber - 从命令行 cucumber `--tags`选项?

java - 在没有 HotSpotDiagnosticMXBean 的情况下从应用程序内部创建堆转储