Перейти к содержимому

Фотография

Isselected() return false


  • Авторизуйтесь для ответа в теме
Сообщений в теме: 6

#1 sok

sok

    Новый участник

  • Members
  • Pip
  • 21 сообщений
  • ФИО:Sokovets Artem


Отправлено 24 августа 2012 - 07:08

Добрый день, всем.

Столкнулся с такой проблемой:
Isselected() всегда возвращает false, причем если элемент Чекбокса нажат.

Код:
List<WebElement> conris = driver.findElements(By.cssSelector("label.prettyCheckbox:not([for*=Edit])"));
for (int i=0; i < 21; i++ )
{
WebElement conri = conris.get(4);
conri.click();
wait(1);
System.out.println(conri.isSelected());
wait(3);
}


Где-то читал, что надо устанавливать значение в True, но setselected - уже не работает ((

Кто подскажет как быть?


Цель: Осуществить проверку, Если чекбокс нажат, то нажать другой чекбокс.
  • 0

#2 Alex

Alex

    Постоянный участник

  • Members
  • PipPipPip
  • 237 сообщений
  • ФИО:Алексей

Отправлено 24 августа 2012 - 07:29

Добрый день, всем.

Столкнулся с такой проблемой:
Isselected() всегда возвращает false, причем если элемент Чекбокса нажат.

Код:
List<WebElement> conris = driver.findElements(By.cssSelector("label.prettyCheckbox:not([for*=Edit])"));
for (int i=0; i < 21; i++ )
{
WebElement conri = conris.get(4);
conri.click();
wait(1);
System.out.println(conri.isSelected());
wait(3);
}


Где-то читал, что надо устанавливать значение в True, но setselected - уже не работает ((

Кто подскажет как быть?


Цель: Осуществить проверку, Если чекбокс нажат, то нажать другой чекбокс.


Если визуально чекбокс выбран, то единственное, что приходит на ум - ссылаетесь на неверный локатор.

Надо смотреть HTML код страницы рядом с этим чекбоксом.
  • 0

#3 sok

sok

    Новый участник

  • Members
  • Pip
  • 21 сообщений
  • ФИО:Sokovets Artem


Отправлено 24 августа 2012 - 08:11

<div class="chkboxSpaser">
<span class="" style=" width:95px;display:inline-block">Абоненты</span>
<input class="hiddenCheckbox" id="roleAbonentsRead" type="checkbox" name="option1">
<label class="prettyCheckbox checkbox list" for="roleAbonentsRead">Чтение</label>
<span class="spacer"></span>
<input class="hiddenCheckbox" id="roleAbonentsWrite" type="checkbox" name="option2">
<label class="prettyCheckbox checkbox list" for="roleAbonentsWrite">Запись</label>
</div>


Вот исходный код.
Там есть скрытый класс (чекбоксов), но у нас форма чекбоксов своя переделанная.
Поэтому я и делал выборку по label.prettyCheckbox:not([for*=Edit]), чтобы были только чекбоксы которые отоброжаются.
  • 0

#4 sok

sok

    Новый участник

  • Members
  • Pip
  • 21 сообщений
  • ФИО:Sokovets Artem


Отправлено 24 августа 2012 - 08:28

Немного слукавил, label.prettyCheckbox:not([for*=Edit]) надо для выбора формы, которая мне нужна, так как на странице две формы с чекбокасми.
  • 0

#5 sok

sok

    Новый участник

  • Members
  • Pip
  • 21 сообщений
  • ФИО:Sokovets Artem


Отправлено 24 августа 2012 - 08:30

Вот так пробывал, тоже False.
C одним элементом:
driver.findElement(By.xpath("//form[@id='editRoleForm']/div[7]/div[5]/label[2]")).click();
WebElement good = driver.findElement(By.xpath("//form[@id='editRoleForm']/div[7]/div[5]/label[2]"));
System.out.println(good.isSelected());
  • 0

#6 sok

sok

    Новый участник

  • Members
  • Pip
  • 21 сообщений
  • ФИО:Sokovets Artem


Отправлено 24 августа 2012 - 08:52

Так проверил на другом проекте, isselect() работает (((
  • 0

#7 sok

sok

    Новый участник

  • Members
  • Pip
  • 21 сообщений
  • ФИО:Sokovets Artem


Отправлено 24 августа 2012 - 12:51

Ответ: все работает.

Кому надо (Рандом чекер) :))

List<WebElement> conris = driver.findElements(By.cssSelector("label.prettyCheckbox:not([for*=Edit])"));
//Инициировали группу Random
Random random = new Random();
//Цикл, который будет повторяться 21 раз.
//
for (int i=0; i < 21; i++ )
{
int conriIndex = random.nextInt(conris.size());
WebElement conri = conris.get(conriIndex);

//Находим класс, а в нем слово checked
if (conri.getAttribute("class").contains("checked"))
continue;
conri.click();
}

Спасибо, кто помог!
  • 0


Количество пользователей, читающих эту тему: 1

0 пользователей, 1 гостей, 0 анонимных