1

シンプルにしようと思います。

次のような同様の行のリストがあります。

ここに画像の説明を入力

HTML コード:

<li ...>
    <div ... >
        <some elements here>
    </div>
    <input id="121099" class="containerMultiSelect" type="checkbox" value="121099" name="NodeIds">
    <a ...>
        <div ... />
        <div ... >
            <h2>Identified Text</h2>
            <h3>...</h3>
        </div>
    </a>
</li>

特定のテキストでチェックボックスをクリックしたいのですが、すべてのリストで同じであり、id が自動的に生成されるため、その要素を使用できません。区別できるのは h2 テキストだけです。私は試した :

browser.h2(:text => /Identified/).checkbox(:name => "NodeIds").set

チェックボックスがタグでネストされていないため、明らかな UnknownException が発生しました。

この場合、どうすればよいですか?

ありがとう

4

2 に答える 2

2

最初にこの説明を見てください http://jkotests.wordpress.com/2012/12/20/finding-a-parent-element-that-matches-a-specific-criteria/

同様のアプローチに従って、

最初に一意の識別子を持つ要素を見つけます

parent=@browser.h2(:text=>"Identified Text")

ここで、チェックボックスとそれに対するテキストの両方を含む親要素に反復する必要があります。

parent=parent.parent until parent.tag_name=="li"

コントロールがli要素に配置されたら、チェックボックスを使用してクリックするだけです。

parent.checkbox.click
于 2013-07-19T11:46:23.403 に答える