2016-12-27 1 views
1

Я пытаюсь проверить все флажки на странице, аналогично https://sqa.stackexchange.com/questions/3292/how-to-select-or-check-multiple-checkboxes-in-selenium.Проверка всех флажков с Selenium

Я пытаюсь сделать это с

checkboxes = driver.find_elements_by_class_name('gwt-CheckBox') 
for checkbox in checkboxes: 
    if not checkbox.is_selected(): 
     checkbox.click() 

однако, все галочки дают Ложные для is_selected() так те, которые уже выбраны ПОЛУЧАЕТ выключены и те, которые не были выбраны ПОЛУЧАЕТ включен. Ниже приведен пример проверенного класса CheckBox (имя библиотеки) и неконтролируемого класса Checkbox (парная номинальная длина).

Как я могу проверить, были ли они уже выбраны?

<div style="position: relative; display: inline-block; vertical-align: top; float: left;"> 
    <span class="gwt-CheckBox"> 
    <input id="gwt-uid-27" tabindex="0" type="checkbox" value="on"/> 
    <label for="gwt-uid-27"> 
    Library name 
    </label> 
    </span> 
    </div> 
</div> 
<div class="holderFp" style="width: 100%; position: relative; overflow: hidden; display: block;"> 
    <div style="position: relative; display: inline-block; vertical-align: top; float: left; width: 25%;"> 
    <span class="gwt-CheckBox"> 
    <input id="gwt-uid-28" tabindex="0" type="checkbox" value="on"/> 
    <label for="gwt-uid-28"> 
    Paired nominal length 
    </label> 
    </span> 
    </div> 
+1

Вы можете попробовать недвижимость "Ценность"? Угадайте, что это значение = «включено» для выбранных флажков! –

ответ

2

кажется, что флажок элементы, на самом деле в <input> нижестоящего тега. Попробуйте использовать его

checkboxes = driver.find_elements_by_css_selector('.gwt-CheckBox > input')