Как найти всплывающую подсказку с текстом <Strong><br> в java

WebElement element= driver.findElement(By.id("jform_email-lbl"));
Actions mouseOver = new Actions(driver);
mouseOver.moveToElement(element).perform();
//String toolTipText = element.getText();
String toolTipElement = driver.findElement(By.id("jform_email-lbl")).getAttribute("title data-original-title");

Это дает мне null значение.

HTML:

<label id="jform_email-lbl" for="jform_email" class="hasTooltip required" title="" data-original-title="<strong>Email Address</strong><br />Please enter the email address associated with your User account.<br />A verification code will be sent to you. Once you have received the verification code, you will be able to choose a new password for your account."> 
    Email Address
    <span class="star">&nbsp;*</span>
</label>

3 ответа

Попробуй с innerText

String text=driver.findElement(By.xpath("//your locator")).getAttribute("innerText");

К сожалению, это не так много информации, которую вы предоставили. Вы могли бы использовать By.TagName("Strong) и отфильтровать их, используя By.TagName("br"), В зависимости от вашей DOM вы можете улучшить это, просто выполнив поиск в <div> например.

Чтобы извлечь текстовое сообщение всплывающей подсказки, вам нужно вызвать WebDriverWait для отображения желаемого элемента, и вы можете использовать следующее решение:

new Actions(driver).moveToElement(element).perform();
String toolTipElement = new WebDriverWait(driver, 20).until(ExpectedConditions.visibilityOfElementLocated(By.xpath("//label[@class='hasTooltip required' and @id='jform_email-lbl']"))).getAttribute("data-original-title");
Другие вопросы по тегам