所以我实现了一个Cucumberjs数据表,但是我认为我做的不正确。

this.And(/^If I click the row "([^"]*)" then I should the following nested information$/, function (rowName, data) {
        resultPage.clickRow(rowName);
        data = dataTable.raw();
        return console.log(data);
    });


我的小黄瓜步骤看起来像

Then If I click the row "Summary" then I should the following nested information
      | Tax       | 11.50
      | Gratuity  | 4.50
      | Total     | 26.59


现在,我只是试图获取这张表并打印出来,以确保它以正确的格式返回,但是我遇到了词法错误,并且测试甚至无法开始。您如何在Javascript中实现呢?我似乎无法在线找到Cucumberjs的任何文档或示例,但是当然有一些Java / Cucumber。

另外,我知道词法错误与以下事实有关:它希望这是一个方案大纲,并且我没有在表格前指定Example:。但是,这不应该是方案概述。这应该是一个数据表。

最佳答案

这个问题的答案实际上与原始问题相距不远。我错过了额外的“ |”在桌子的右边。

Then If I click the row "Summary" then I should the following nested information
      | Tax       | 11.50  |
      | Gratuity  | 4.50   |
      | Total     | 26.59  |


此外,请确保javascript步骤定义按使用顺序包含参数。因此,在这种情况下,问题中使用的相同步骤定义是正确的

this.And(/^If I click the row "([^"]*)" then I should the following nested information$/, function (rowName, data) {
        resultPage.clickRow(rowName);
        data = dataTable.raw();
        return console.log(data);
    });


与我在黄瓜/ java上看到的示例相比,这非常容易。 Cucumberjs确实需要改进其文档。

关于javascript - Cucumberjs数据表-如何将其转换为.raw(),我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/40871977/

10-08 22:40