Есть отличная удаленная работа для php+codeception+jenkins+allure+docker спецов. 100% remote! Присоединиться к проекту

Как на Java написать дабл клик. driver.findElement(By.id("user_10661")).click();

selenium
testng
java
Теги: #<Tag:0x00007f7b63d6c9b0> #<Tag:0x00007f7b63d6c848> #<Tag:0x00007f7b63d6c6b8>

(Svetlana Firsova) #1

Всем привет! Подскажите как на Java написать дабл клик. driver.findElement(By.id(“user_10661”)).click();
Пробую писать автотесты и нужно с помощью дабл клика открыть настройки
То что уже пробовала и не помогло это:
1.
driver.findElement(By.id(“user_10661”)).click();
driver.findElement(By.id(“user_10661”)).click();
2.
Actions actions = new Actions(driver);
List expandQA = driver.findElements(By.id(“user_10661”));
WebElement e = expandQA.get(2);
actions.doubleClick(e);
3.
driver.findElement(By.id(“user_10661”)).click()
Thread.sleep(100);
driver.findElement(By.id(“user_10661”)).click()


(Bohdan Harasym) #2

Это случайно не выпадающий список?


(Svetlana Firsova) #3

Это не выпадающий список - при нажатии двойным кликом на этот элемент открывается поп-ап.


(Dema W) #4

Пробуйте использовать Actions https://seleniumhq.github.io/selenium/docs/api/java/org/openqa/selenium/interactions/Actions.html

Actions action = new Actions(driver);

//Double click
action.doubleClick(element).perform();


(Bohdan Harasym) #5

Если браузер фаерфокс, попробуйте хром ил опера.


(Svetlana Firsova) #6

Actions action = new Actions(driver);
action.doubleClick(findElement(By.id(“user_10661”))).perform();

записала вот так и у меня find element подчеркнуло.


(Svetlana Firsova) #7

Браузер Chrome


(Bohdan Harasym) #8

Ещё попробуйте перед даблкликом поставить:
driver.findElement().sendKeys("");


(Yaroslav Pernerovskyy) #9

action.doubleClick(driver.findElement(By.id(“user_10661”))).perform();


(Svetlana Firsova) #10

Спасибо всем за помощь!!! Получилось!!!

Actions action = new Actions(driver);
Action dblclick = action.doubleClick(driver.findElement(By.xpath("//li[@class=‘rootUserBranch jstree-open jstree-last’]/a"))).build();
dblclick.perform();
Thread.sleep(1000);

Мои ошибки были в том, что неправильно нашла элемент и обязательно нужно было поставить паузу))