Определить, установлен ли переключатель в веб-драйвере

1

Я пытаюсь проверить, включен ли переключатель. У меня есть ниже фрагмент кода html для переключателя.

<span class="jquery-hp-radio jquery-hp-radio-checked" style="-moz-user-select: none;">
<span class="mark">
<img src="http://someurl/images/empty.gif">
</span>
</span>

Пробовал с помощью кода ниже -

if(driver.findElement(By.className("mark")).isSelected()){
          System.out.println("True");
      }else
      {
          System.out.println("False");
      }     
  }

Он дает вывод как False - даже если переключатель по умолчанию выбран.

  • 0
    isSelected () будет работать только для конкретного элемента флажка, такого как <input type = "checkbox" />.
  • 0
    Вы используете правильный локатор для переключателя, на котором вы выполняете проверку? Я вижу 2 имени класса .....
Показать ещё 1 комментарий
Теги:
selenium-webdriver
webdriver

3 ответа

1

Благодаря @Rameshwar

Ваше решение сработало

Я смог определить, установлен ли переключатель радио или не установлен "jquery-hp-radio jquery-hp-radio-checked" на

if(driver.findElement(By.xpath("//span[@class='mark']/..")).getAttribute("class").contains("checked")){
          System.out.println("True");
      }else
      {
          System.out.println("False");
      }   
  }
1

Я считаю, что ваш class переключателей jquery-hp-radio jquery-hp-radio-checked при его проверке.

Таким образом, вы делаете следующее, чтобы проверить, проверена ли кнопка или нет

if(driver.findElement(By.xpath("//span[@class='mark']/..")).getAttribute("class").contains("checked")){
          System.out.println("True");
      }else
      {
          System.out.println("False");
      }   
  }
0

Если в приложении по умолчанию выбран переключатель, используйте атрибут get().

например

if (driver.findelement(By.xpath ()).getattribute("componentid").endwith("true")){
system.out.println("selected")
}else{
system.out.println("not selected")
}

Ещё вопросы

Сообщество Overcoder
Наверх
Меню