1

以下は私のコードです

以下はタグです。

    <TR id="oldcontent" bgcolor="#D0D0D0">
    <TD id="ignore" style="vertical-align:middle">      
    <input type="checkbox" name="selectedId" value="22047"onclick="updateSelectionList('<%=campaign.getId()%>')">
    </TD>
   <TD  id="oldcontent">Code</TD>
    <TD ALIGN="left" id="oldcontent">
    <select name="status" style="width=150" id="newcontentformat">
    <option value="14" selected="selected">text1</option>
    <option value="15">text2</option>
    </TD>
<TR>        

ここで1)文字列なしで動的に値を生成したチェックボックスをクリックする必要があります。2)チェックボックスの次の横にある「コード」というテキストに基づいてチェックボックスを選択できますか?3)名前ステータスのドロップダウンでtext2を選択する必要があります4)最後の問題は、テストケースを実行するたびに、Webページのどこにでも表示される可能性があることです。したがって、文字列「コード」を使用してチェックボックスをオンにする必要があります。名前がstausのドロップダウンから値を選択する必要があります。同じ名前のステータスを持つ他のドロップダウンボックスがあります。具体的にはどうすればよいですか?

4

2 に答える 2

2

「コード」というテキストが含まれる行の選択リストを取得するには、xpathを使用できます。

//tr[./td[text()='Code']]/td/select

同様に、チェックボックスには、xpathを使用できます。

//tr[./td[text()='Code']]/td/input[@type='checkbox']

その場合、必要なセレンコードは次のとおりです。

selenium.select("//tr[./td[text()='Code']]/td/select", "text2")
selenium.check("//tr[./td[text()='Code']]/td/input[@type='checkbox']")
于 2012-11-15T18:02:38.060 に答える
0

HTMLで使用可能な名前がある限り、Nameを使用して要素を見つけることができます。

  1. チェックボックスをクリックすると、次のように記述できます。

    selenium.click(//input[@name='selectedId']);
    
  2. テキストロケーターを使用してチェックボックスに移動するには、次のようにする必要があります。

    //div[text()='text you want to precede']/preceding::input[@name='selectedId'];
    

    (ここでは、名前の代わりに任意のプロパティを使用できます。)

  3. dropdowmからテキストを取得するには:

    selenium.select(//select[@name='status'],"text2");
    

このようなロケーター(位置に依存しない)を使用する場合、要素が画面のどこに表示されていても、これらのロケーターを使用して検索できます。

前または後の検索の詳細については、Ebook:Selenium.1.0.Testing.Tools.Beginners.Guideをダウンロードしてください。

于 2012-11-16T06:24:20.673 に答える