Как щелкнуть непрочитанное письмо в gmail с определенной темой, скажем «Имя» - PullRequest
2 голосов
/ 08 июля 2019

Я хочу щелкнуть непрочитанное письмо (новое письмо) в папке «Входящие» с темой «Тест»

Эта функция в настоящее время нажимает на старую электронную почту с темой «Тест». Я хочу выполнить эту функцию для непрочитанного письма с темой "Тест"

public static WebElement executeVerifyEmail(WebDriver driver) 
{

    try
    {
        GmailLogin.waitforVisible(driver, GmailLogin.Logo(driver));
        List<WebElement> emaillist=driver.findElements(By.xpath("//span[@class='bog']"));

        for(int i=0; i<emaillist.size(); i++){
            if(emaillist.get(i).getText().contains("TEST"))
            {
                emaillist.get(i).click();
                System.out.println("Email clicked");
                break;
            }
        }

    }catch(org.openqa.selenium.StaleElementReferenceException ex)
    {       
    ex.getMessage();        
    }
    return null;
}

1 Ответ

0 голосов
/ 08 июля 2019
  1. Вам необходимо изменить XPath селектор , чтобы просмотреть child span как:

    List<WebElement> emaillist=driver.findElements(By.xpath("//span[@class='bog']/span"));
    
  2. Вам необходимо изменить свое условие, чтобы проверить свойство font-weight , для прочитанных писем это будет 400, а для непрочитанных - 700

    if (emaillist.get(i).getText().contains("TEST") && emaillist.get(i).getCssValue("font-weight").equals("700")) {
    
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...