3

Cucumber と Capybara は初めてで、特定の列に値があるかどうかを確認する必要があるテーブルがあります。

私のステップは次のようになります: (疑似コードで) 値を持つものが表示されるはずです: A,B,C

次に、特定の ID でテーブルをクエリし、2 番目の列のすべての行に、ステップで渡された値があるかどうかを確認する必要があります。

この例では、これはテストに合格するはずです

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 に答える