我正在尝试使用 selenium webdriver 测试旅行计划网站。
例如说我正在测试cleartrip.com。
如何使用selenium从查找字段中选择城市?
例如,我必须选择源城市。
如果我输入 DE,它会根据我输入的内容提供“Delhi”、“Dehradun”等选项,并且在这些选项中,我必须选择“Delhi”。
如何使用Selenium实现它?请建议。
我是 Selenium 的新手,任何帮助将不胜感激。
最佳答案
这段代码对我有用
WebDriver driver = new FirefoxDriver();
driver.get("http://www.cleartrip.com/");
WebElement From = driver.findElement(By.id("FromTag"));
From.sendKeys("Del");
WebElement autoComplete = driver.findElement(By.id("ui-id-1"));
try{
(new WebDriverWait(driver, 5/*sec*/)).
until(ExpectedConditions.presenceOfElementLocated((By.cssSelector("li.list")))); }
catch(org.openqa.selenium.TimeoutException e){
System.out.println(e.getMessage());
}
List<WebElement> autoCompleteList = autoComplete.findElements(By.className("list"));
if(autoCompleteList.size()==0) {
System.out.println("autoComplete list NOT found");
}
else {
System.out.println("autoComplete list Found with elements: "+autoCompleteList.size());
}
for (WebElement ac: autoCompleteList){
if(ac.getText().contains("Delhi")){
ac.click();
break;
}
}
driver.close();
请注意,这只是示例,请改进代码,添加对象不为空的验证、删除硬编码字符串等。
关于java - 如何使用 selenium webdriver 从查找字段中选择值,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/29314580/