java - 在 JBehave 中,如何将数组作为参数从故事文件传递到步骤文件?

标签 java bdd jbehave

我一直在阅读 JBehave 文档,但没有找到任何与此特定用例相关的内容。我找到的最接近的是 this在参数化场景中,但这并不是我想要的。我不需要使用不同的参数多次运行相同的逻辑,我需要使用一组参数运行一次步骤逻辑。具体来说,我需要传递数字 1-4 的组合。有没有办法做到这一点?

最佳答案

你的意思是像Tabular Parameters

你可以这样使用它:

Given the numbers: 
|combinations|
|1234|
|4321|
|1324|
When ...

然后:

@Given("the numbers: $numbersTable")
public void theNumbers(ExamplesTable numbersTable) {

    List numbers = new ArrayList();
    for (Map<String,String> row : numbersTable.getRows()) {
        String combination = row.get("combinations");
        numbers.add(combination);
    }
}

我刚刚重写了 jBehave 示例,因此它可以满足您的需求。您可以将任意数量的组合传递到给定、when、then 步骤内的表中,并将其转换为数组或在我的示例中转换为列表。

关于java - 在 JBehave 中,如何将数组作为参数从故事文件传递到步骤文件?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/32572442/

相关文章:

node.js - 如何使用 vows.js 运行清理?

javascript - CucumberJS 2.0.0+ 的 cucumber 表达式

java - jBehave生成系统的 'live documentation'

java - 如何使用 Serenity、JBehave 和 Selenium 设置配置的嵌入器以使用元过滤器 (-skip)

java - 将 jbehave 报告输出到代码位置以外的其他位置

jbehave/storyDurations.props 的 java.io.FileNotFoundException

java - EJB 模块初始化监听器

java - 如何制作Java桌面应用程序的快捷方式?

java - Woodstox 不报告 CDATA 事件类型

java - 在根目录下创建文件,奇怪的响应