Java Selenium抛出未找到的元素异常
我不熟悉使用java的selenium,并尝试自动化一些场景。我编写了一段代码来在字段中插入文本,但问题是,当我通过xpath、id或名称在dom中搜索元素时,但当我运行脚本时,会显示该元素 我得到一个“找不到这样的元素”错误。下面是我的代码,下面是XML 我的代码:Java Selenium抛出未找到的元素异常,java,selenium-webdriver,Java,Selenium Webdriver,我不熟悉使用java的selenium,并尝试自动化一些场景。我编写了一段代码来在字段中插入文本,但问题是,当我通过xpath、id或名称在dom中搜索元素时,但当我运行脚本时,会显示该元素 我得到一个“找不到这样的元素”错误。下面是我的代码,下面是XML 我的代码: public void SearchByZipCode(String Zipcode) { WebElement addressfield = driver.findElement(By.name("address
public void SearchByZipCode(String Zipcode) {
WebElement addressfield = driver.findElement(By.name("addressline"));
addressfield.sendKeys(Zipcode);
WebElement search = driver.findElement(By.id("locator_submit"));
search.click();
WebElement result = driver.findElement(By.xpath("//div[@id='panel']//span[2]"));
String text = result.getText();
if (text.contains(Zipcode)) {
System.out.println("Passed! Expected results for: " + Zipcode + "Actual result displayed for: " + text);
} else {
System.out.println("Failed! Expected results for: " + Zipcode + "Actual result displayed for: " + text);
}
HTML:
我建议使用first use方法,它将等待此元素出现并激活。然后输入您的值。
另外,最好使用ID作为选择器,因为它在您的页面中可用。验证xPath需要查看更多的DOMCheck xPath。如果您觉得xpath是正确的,则在“search.click();”之后显式等待,并等待元素(By.xpath(//div[@id='panel']///span[2]”)出现。
<input tabindex="3" style="padding:8px; width:90%; border:1px solid
#cdcdcd;" class="addressentry" type="text" size="40" name="addressline"
id="inputaddress" value="Enter street address, city, state or ZIP"
onclick="clear_inputbox(this);">