1

我正在使用cucumber-jvm。我在 .feature 文件中有以下内容:

  Background:
    Given the following account file line:
      | First Name     | Lance  |
      | Last Name      | Fisher |
      | Corporate Name |        |

这是一个垂直方向的表。以下生成的步骤定义使用 First Name 和 Lance 作为标题,其中 First Name、Last Name 和 Corporate Name 应该是标题。

@Given("^the following account file line:$")
public void the_following_account_file_line(DataTable arg1) throws Throwable {
    // Express the Regexp above with the code you wish you had
    // For automatic conversion, change DataTable to List<YourType>
    throw new PendingException();
}

我将如何实现一个步骤定义来处理垂直表而不是水平表?

4

2 回答 2

4

只需接收参数值Map<String, String>而不是 DataTable。Cucumber 会将第一列转换为映射键,将第二列转换为映射值。

于 2015-02-05T12:25:37.387 回答
2

这很简单,因为 Datatable 可以返回一个字符串数组的数组,并且您可以按照您希望的任何方式逐步执行此操作。

但是,我同意 Prakash Murthy 的观点,即水平表更常见且更实用。

于 2013-02-20T13:11:07.477 回答