11

表のセルに一意の ID を割り当てないアプリがあります。列 1 に一意のテキスト、列 2 に管理リンク、列 3 に削除リンクがある場合、テキスト 'Foo' を含む同じ行の管理リンクをクリックするようにカピバラに指示するにはどうすればよいですか?

Foo   manage  delete
Bar   manage  delete

find('tr', text: "Foo")で使うと使い方がわかります。.shouldまた、「manage」というテキストを含むリンクをクリックする方法もわかります。しかし、それらを組み合わせて行を見つけ、その行内でリンクをクリックする方法がわかりません。

4

2 に答える 2

15

私はこれをテストしましたが、うまくいくはずです:

find(:xpath, "//tr[td[contains(.,'Foo')]]/td/a", :text => 'manage').click

これは、「Foo」というテキストを含む列を含む行を見つけ、同じ行の「manage」というテキストを含む列のリンクをクリックするということです。

「Foo」がどこに表示されるかを気にしない場合 (つまり、行のどこにでもある可能性があります)、次のようにすることができます。

find(:xpath, "//tr[contains(.,'Foo')]/td/a", :text => 'manage').click
于 2012-10-12T03:57:05.840 に答える