Как перебирать переключатели в watir

Ниже приведен код, который описывает элементы переключателя.

<div class="questionnaire_detail_question_body">
<div class="questionnaire_detail_answers">
                    <label class="radioinputwrapper">
                      <input class="questionnaire_detail_radiobutton" type="RADIO" value="Never">
                    </label>
                    <label class="radioinputwrapper">
                      <input class="questionnaire_detail_radiobutton" type="RADIO" value="Sometimes">
                    </label>
                    <label class="radioinputwrapper">
                      <input class="questionnaire_detail_radiobutton" type="RADIO" value="Often">
                    </label>
</div>
</div>

Я попытался получить все переключатели под определенным div и выбрал опцию, используя код ниже. Элемент - элемент списка, который нужно перебрать

answers = item.div_element(class: 'questionnaire_detail_question_body')
                    .div_element(class: 'questionnaire_detail_answers').radio_button_elements
      answers.each do |input|
        if input.value.include? option
          input.click
          selected_option &&= input.set?
        end
      end

Но во время проверки, установлен ли переключатель или нет.set? или.checked?, я получаю предупреждение об устаревании как

* DEPRECATION WARNING Вы вызываете метод с именем set? на psc.rb:62: в блоке (2 уровня) в psc_choose_selected_score'. Этот метод не существует в объекте страницы, поэтому он передается драйверу. Эта функция будет удалена в ближайшее время. Пожалуйста, измените ваш код, чтобы вызвать правильный метод объекта страницы. * Если вы используете функциональность, которой нет в объекте страницы, пожалуйста, попросите ее добавить.

Я пытался использовать методы, упомянутые в https://github.com/cheezy/page-object/wiki/Elements, как select_option и option_selected?

Мой вопрос, как избавиться от этого предупреждения об устаревании?

1 ответ

Решение

Метод проверки того, что PageObject::Elements::RadioButton выбран selected?:

input.selected?
Другие вопросы по тегам