我正在尝试使用Selenium来验证AutoSuggest下拉列表中的所选值是否正确。但是使用getText()不会返回任何结果。
下面是我的代码
public class AutoSuggestDropdownsTest {
public static void main(String[]args) throws InterruptedException {
System.setProperty("webdriver.chrome.driver", "/resources/executables/chromedriver") ;
WebDriver driver = new ChromeDriver();
driver.manage().deleteAllCookies();
driver.get("https://example.com/");
driver.findElement(By.xpath("//*[@class='stamp remove-sign']")).click();
driver.findElement(By.xpath("//input[@id='or-search']")).sendKeys("to");
driver.findElement(By.xpath("//input[@id='or-search']")).sendKeys(Keys.DOWN);
driver.findElement(By.xpath("//input[@id='or-search']")).sendKeys(Keys.DOWN);
driver.findElement(By.xpath("//input[@id='or-search']")).sendKeys(Keys.DOWN);
System.out.println(driver.findElement("//input[@id='or-search']")).getText());
System.out.println("hello");
driver.quit();
}
通常,自动提示结果需要一些时间才能显示,因此,如果在发送sendKeys(Keys.DOWN)
之后立即执行to
,则很可能还没有自动提示出现,因此DOWN
键无效。要检查是否是这种情况(仅出于测试的开发目的),请放置10秒钟的睡眠时间,并检查您认为应该显示的文本是否与睡眠一起实际出现。