3

我是 Cucumber 和 Capybara 的新手,我有一张表,我需要在其中检查特定列是否具有某些价值。

我的步骤是这样的:(在伪代码中)我应该看到一些有价值的东西:A,B,C

然后我需要查询具有特定 id 的表,并检查第二列的所有行是否都具有步骤中传递的值。

在这个例子中,这应该通过测试

some value | A
some value | B
some value | A
some value | A
some value | C

但这不会通过:

some value | A
some value | D

有任何想法吗?

4

1 回答 1

13

你可以这样做:

Then /^I should see that all values in second column are either A, B or C$/ do
  all('#table_id tr > td:nth-child(2)').each do |td|
    %w{A B C}.should include td.text
  end
end

参数化代码(我的意思是 A、B、C)留给读者作为练习。

于 2013-02-03T12:58:59.957 回答