0

自動化テストでラジオ ボタンをクリックしたい。ページにラジオ ボタンが表示されていても、選択されていないラジオ ボタンにはdisplayed:falseプロパティがあります。displayed:falsehtmlオブジェクトにプロパティがある場合、Selenideは何とかクリックできません。エラーは次のとおりです。Element should be visible {By.id: radio_btn_id}

ここに私のラジオボタンがあります:

<input class="radio_class" id="radio_btn_id" name="radio_btn_name" type="radio" value="12" displayed:false></input>

プロパティを削除するために私が試したことと、それらのどれも機能していません

SelenideElement element = $(By.id(id));
Selenide.executeJavaScript("document.getElementById('radio_btn_id').removeAttribute('displayed:false')", element);

Selenide.executeJavaScript("document.getElementById('radio_btn_id').removeAttribute(\"displayed:false\")", element);

Selenide.executeJavaScript("jQuery('select:not(:visible)').css('display','block')", element);

selected:trueプロパティを削除しようとしましたが、うまくいきました。なぜそれが機能しないのかわかりませんdisplayed:false。アイデアはありますか?

[編集] 受け入れられた回答はSeleniumバージョンです。それSelenideはよりクリーンでシンプルです:

SelenideElement element = $(By.id(id));
Selenide.executeJavaScript("document.getElementById('"+ id+ "').click();", element);

[解決]

チェックボックスとラジオボタンに対する Selenide の動作

4

1 に答える 1