ラジオボタンを選択するためにSeleniumテストを作成しようとしています。以下は、 'ソースの表示'のhtmlです。Selenium WebdriverでPrimeFacesラジオボタンを選択
<table id="surveyForm:surveyUrlType" class="ui-selectoneradio ui-widget" style="width:100%;margin-top:10px;margin-bottom: 10px;">
<tbody>
<tr>
<td>
<div class="ui-radiobutton ui-widget">
<div class="ui-helper-hidden-accessible">
<input id="surveyForm:surveyUrlType:0" name="surveyForm:surveyUrlType" type="radio" value="TYPED" checked="checked" onchange="com.ssi.feasibility.surveyView.showSurveyType(this);">
</div>
<div class="ui-radiobutton-box ui-widget ui-corner-all ui-state-default ui-state-active">
<span class="ui-radiobutton-icon ui-icon ui-icon-bullet"></span>
</div>
</div>
</td>
<td><label for="surveyForm:surveyUrlType:0">Enter Survey URL</label></td>
<td>
<div class="ui-radiobutton ui-widget">
<div class="ui-helper-hidden-accessible">
<input id="surveyForm:surveyUrlType:1" name="surveyForm:surveyUrlType" type="radio" value="FILE" onchange="com.ssi.feasibility.surveyView.showSurveyType(this);">
</div>
<div class="ui-radiobutton-box ui-widget ui-corner-all ui-state-default">
<span class="ui-radiobutton-icon"></span>
</div>
</div>
</td>
<td><label for="surveyForm:surveyUrlType:1">Upload Survey URLs</label></td>
</tr>
</tbody>
</table>
「アンケートURLのアップロード」ラジオボタンを選択します。
私はラジオボタンを選択するためにいくつかの異なる方法を試しました。
$("#surveyForm\\surveyUrlType").click();
This gives me the error :
$("#surveyForm\\:surveyUrlType\\:1").first().click()
エラー - 要素はポイント(809,367)でクリックできません。その他の要素は、クリックを受け取ることになる:...
以下は私にNoSuchElementFound与える:以下 driver.findElement(By.id("surveyForm:surveyUrlType:1")).click()
driver.findElement(By.xpath("//input[@type='radio' and @id='surveyForm\\:surveyUrlType\\:1']")).click()
driver.findElement(By.xpath("//input[@value='FILE']")).click()
driver.findElement(By.cssSelector("#surveyForm\\:surveyUrlType\\:1")).click()
は私にエラーを与えませんが、彼らはまた、ラジオボタンを選択しないでください。
$(".ui-radiobutton-box ui-widget ui-corner-all ui-state-default")[1].click()
$(".ui-radiobutton-box ui-widget ui-corner-all ui-state-default").click()
$("#surveyForm\\:surveyUrlType").find(".ui-radiobutton-box ui-widget ui-corner-all ui-state-default").find("span").click()
しかし、これらの作業はありません。私は何が欠けていますか?
「プライムフェイス」ダイアログにあります。私はページ上の他の入力ボックスにアクセスしてその値を操作することができます。しかし、このラジオボタンだけ。最初のものがあらかじめ選択されています。私は第2のものを選択したい。いいえ、私はWebDriverWaitを試していません。 – user1860447