簡體   English   中英

如何在Selenium Webdriver中選擇單選按鈕? 動態選擇單選按鈕

[英]How to select radio button in selenium webdriver ? dynamic select of radio button

<tbody>
<tr class="odd">
<td>
<input id="nodeAccountOid" type="radio" onclick="setNodeAccountIdToCredentialCheck('E9E2930C4493B569E040A8C0158E4ABD');" style="width:100%;border:0px">
</td>
<td>E9E2930C4493B569E040A8C0158E4ABD</td>
<td>monacho1</td>
<td>urn:dece:org:org:dece:dece:cs</td>
</tr>
<tr class="even">
<td>
<input id="nodeAccountOid" type="radio" onclick="setNodeAccountIdToCredentialCheck('E9E2930C4494B569E040A8C0158E4ABD');" style="width:100%;border:0px">
</td>
<td>E9E2930C4494B569E040A8C0158E4ABD</td>
<td>monacho1</td>
<td>urn:dece:org:org:dece:coord:cs</td>
</tr>
<tr class="odd">
<td>
<input id="nodeAccountOid" type="radio" onclick="setNodeAccountIdToCredentialCheck('E9E2930C4495B569E040A8C0158E4ABD');" style="width:100%;border:0px">
</td>
<td>E9E2930C4495B569E040A8C0158E4ABD</td>
<td>monacho1</td>
<td>urn:dece:org:org:dece:300</td>
</tr>
<tr class="even">
<td>
<input id="nodeAccountOid" type="radio" onclick="setNodeAccountIdToCredentialCheck('E9E2930C4495B569E040A8C0158E4ABD');" style="width:100%;border:0px">
</td>
<td>E9E2930C4495B569E040A8C0158E4ABD</td>
<td>monacho1</td>
<td>urn:dece:org:org:dece:10</td>
</tr>
</tbody>
</table>

我想選擇對應於urn:dece:org:org:dece:10的單選按鈕,這是所提供的html中的第四行。 根據AUT中的某些輸入,有時該行可能會更改。 請提供給我選擇的方式。

提前致謝

由於文本永遠不變,因此您可以將其用作DOM中的起點,並使用XPath導航至所需的input

//td[.='urn:dece:org:org:dece:10']/parent::tr/descendant::input[@id='nodeAccountOid' and @type='radio']
  1. 獲取text 等於 urn:dece:org:org:dece:10td

  2. 獲取該td的父tr

  3. 從父tr ,得到了input有一個id 等於 nodeAccountOid並具有typeradio

因此,元素的確切位置無關緊要,只要XPath定位器可以向上導航至parent ,然后再次向下導航至所需的input

您面臨的問題是在網頁中定位某個元素,該元素可能出現在不同的位置。 如果存在可以通過其內容,ID或名稱輕松識別的另一個元素,並且該元素與您要定位的元素之間存在靜態關系,則可以使用xpath。 據我所知,硒文檔中也有一些示例。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM