static By yearFoundErrorMessage = By.className("error");
public static WebElement ca1_YearFoundError(WebDriver driver){
element = driver.findElement(By.id("yearFoundErrorMessage"));
return element;
}
//Main class from where I'm calling above function
String errorMessage = Ca1GeneralInformation.ca1_YearFoundError(driver).getText();
System.out.println(errorMessage);
<div class="controls">
<input id="ca1_GEN_foundedDate" class="error" type="text" value="2008" maxlength="4" name="data[CaInformation][ca1_GEN_foundedDate]" tabindex="5" unsaved="true">
<span id="ca1_GEN_foundedDate_error" class="inline-error ajax-failed-msg">
<span class="error" for="ca1_GEN_foundedDate">Please enter a valid year (i.e. 2013)</span>
</span>
</div>
我正在开发 Web 应用程序,其中 Span 中有错误消息,我想使用 WebDriver 获取该 Span 的文本。以上是我的html和代码。请帮助我。 提前致谢。
最佳答案
yearFoundErrorMessage
是一个 By
变量,但您将其作为字符串发送到另一个 By
。试试这个
public static WebElement ca1_YearFoundError(WebDriver driver) {
element = driver.findElement(yearFoundErrorMessage);
return element;
}
关于java - Selenium WebDriver Java - 我无法从 span 获取动态文本,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/35428688/