Artem
(Artem)
#1
Добрый день,
Подскажите, как осуществить следующие:
Нахожу элемент и хочу вызвать его (это чекбокс)
WebElement conri = conris.get(conriIndex);
Но потом надо сделать, проверку если он уже нажат то => следующий цикл, если нет надо нажать.
Чекбокс считается нажатам когда у в label classe появляется доп.строка checked.
Какой мне определить нажат ли чекбокс, если нет то нажать.
Спасибо.
TIT
(Сергей Блохин)
#3
Не проще его в любом случае нажать?
furiousduck
(Alexander Petrovich)
#4
На пайтоне, чтобы чекбокс был нажат, написал такой метод
def select_checkbox(driver, xpath, deselect=False):
checkbox = driver.find_element_by_xpath(xpath)
if not deselect and not checkbox.is_selected():
checkbox.click()
if deselect and checkbox.is_selected():
checkbox.click()
Если его наоборот нужно анчекнуть, то вот так
def deselect_checkbox(driver, xpath, deselect=True):
checkbox = driver.find_element_by_xpath(xpath)
if not deselect and not checkbox.is_selected():
checkbox.click()
if deselect and checkbox.is_selected():
checkbox.click()
Artem
(Artem)
#5
List<WebElement> conris = driver.findElements(By.cssSelector("label.prettyCheckbox:not([for*=Edit])"));
Random random = new Random();
for (int i=0; i < 21; i++ )
{
int conriIndex = random.nextInt(conris.size());
WebElement conri = conris.get(conriIndex);
wait(3);
conri.isSelected();
wait(4);
if(!(conri.isSelected())) {
conri.click();
}
Вот код, где рандомно ставятся чекбоксы.
Надо сделать проверку: Если чекбокс уже нажат, то необходимо нажать другой...
Чего-то не получается :(
Artem
(Artem)
#6
wait(3);
conri.isSelected();
wait(4);
Это было лишнее..
furiousduck
(Alexander Petrovich)
#7
Чем плох предложенный мною метод? Работает точно, просто реализуйте для java
Artem
(Artem)
#8
Да я уже понял что надо реализовать твой метод, но не полчается бля (( Туплю