2

私は watir-WebDriver を使用して、Web サイトのテスト自動化を自動化しています。兄弟リンクにアクセスする必要があります。

このように見えます

何か > 何か 2 > 現在のページのタイトル (link1) (link2) (text1)

text1 のクラス ID を取得しました。link2 をクリックして、Something 2 に戻る必要があります。

どうすればこれを取得できますか。

4

5 に答える 5

1

2人の兄弟の共通の親を見つけることができる場合は、その親に移動し、次のようなものを使用してそのポイントから要素を選択できます。

ソースhtml:

<tr>
  <th>No. of films</th>
  <td>7</th>
</tr>

スクレイプ(@bブラウザオブジェクトです)

@b.th(:text => "No. of films").parent.tds.first.text
#=> 7
于 2013-03-21T04:57:45.543 に答える
1

elements_by_xpath で兄弟リンクを取得できると思います。


HTML ソース:

<a href="foo">バー</a><p class="baz">テキスト</p>


watir-webdriver スクリプト:

p(:class,'baz').elements_by_xpath('前の兄弟::*')[-1]

于 2011-02-25T13:35:42.760 に答える
0

私が正しく理解していれば、divのようなコンテナ要素があり、その中に2つのリンクといくつかのテキストがあります。明確ではないのは、テキストが外側のコンテナに属しているのか、それとも独自のコンテナの内側にあるのかということです。テキストの「classid」(それはclass?またはid?)があると言うと、それはそれ自体のコンテナー要素にあると推測します。

その場合

browser.element(:class, 'value').parent.link(:index, 2).click

これは、DOMのより明確なモデルであるHTMLの実際のサンプルなしで実行できる最善の方法です。

于 2011-03-16T20:15:12.513 に答える
0

(text1)が(link2)の子である場合は、次のことを試してください。

(text1).parent

于 2011-02-25T13:22:23.570 に答える