Selenium Webdriver: Как удалить открытое письмо из Gmail с помощью Selenium Webdriver - PullRequest
3 голосов
/ 06 ноября 2019

Код, который я пробовал:

 driver.findElement(By.xpath("//div[@aria-label='Delete' and @role = 'button']"));

и

 driver.findElement(By.xpath("///div[@class='iH bzn']//div[@aria-label='Delete' and @role = 'button']"));

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

Заранее спасибо.

enter image description here

Если кто-то может помочь с сценарием Java для удаления электронной почты,было бы также полезно

Ответы [ 2 ]

2 голосов
/ 06 ноября 2019

Сначала вам нужно от Mouse hover до groupElement:

//div[@class='iH bzn']//div[@class='G-tF']//div[2][@class='G-Ni G-aE J-J5-Ji']

groupElement

Значок удаления необходимо вызвать из другого видимого элемента:

//add some wait here
WebElement groupElement = driver.findElement(By.xpath("//div[@class='iH bzn']//div[@class='G-tF']//div[2][@class='G-Ni G-aE J-J5-Ji']"));
Actions action = new Actions(driver);
action.moveToElement(groupElement).build().perform();
driver.findElement(By.xpath("//div[@aria-label='Delete']//div[@class='asa']")).click();

После импорта:

import org.openqa.selenium.interactions.Actions;
2 голосов
/ 06 ноября 2019

Javascript код, с помощью которого вы можете удалить открытую электронную почту из Gmail.

let down = new MouseEvent('mousedown');
let up = new MouseEvent('mouseup');
let elem = document.getElementsByClassName('nX')[0];
elem.dispatchEvent(down);
elem.dispatchEvent(up);

Спасибо.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...