2013-11-15 53 views
0

目前正在selenium webdriver工作。我正在尝试选择多个下拉菜单,并且它是筛选器选择。一旦我选择了多个下拉列表,我将点击应用滤镜按钮,然后我将根据所选滤镜部分产生结果。所以我越来越难以选择多个下拉菜单,并且无法点击应用过滤器下拉菜单。你能帮我弄清楚如何使用代码。我用java如何选择使用硒webdriver多个下拉

这里是我的示例代码:

driver.findElement(By.id("ext-new-prs")).click(); 
new Select(driver.findElement(By.id("visualizationId"))).selectByVisibleText("Center"); 
new Select(driver.findElement(By.id("periodId"))).selectByVisibleText("Last 52 Weeks"); 
new Select(driver.findElement(By.id("topographyId"))).selectByVisibleText("Center"); 
driver.findElement(By.cssSelector("#topographyId > option[value=\"center\"]")).click(); 
new Select(driver.findElement(By.id("centerId"))).selectByVisibleText("OAB"); 
new Select(driver.findElement(By.id("featureRequestId"))).selectByVisibleText("Include"); 
driver.findElement(By.id("kpiFilterSubmit")).click(); 
+0

我们需要知道你做了什么错误,也可能是HTML –

+0

org.openqa.selenium.ElementNotVisibleException:元素当前不可见,因此可能不会与 交互命令持续时间o r timeout:16毫秒 – Amirdha

+0

如果添加driver.manage()。timeouts()。implicitlyWait(30,TimeUnit.SECONDS); – Amirdha

回答

0

类似下面: -

Actions actions = new Actions(driver); 
WebElement dBox1= (new WebDriverWait(driver,10)).until(ExpectedConditions.elementToBeClickable(By.id("visualizationId"))).selectByVisibleText("Center"); 
actions.moveToElement(dBox1); 
actions.click(); 
actions.perform(); 
+0

我在我的代码中使用了上述代码,但遇到了如下错误,等待元素可点击10秒后超时:By.id:visualizationId – Amirdha

0
public static void waitforElement (WebDriver driver , int Seconds , String Locator) 
{ 
WebDriverWait wait=new WebDriverWait(driver, Seconds); 
wait.until(ExpectedConditions.visibilityOfElementLocated(By.xpath(Locator))); 
} 
use this method 
waitforElement(driver,30,"//div[@id='divGrid']"); 
call like this 
By sundar 
www.mjksundar.weebly.com 
相关问题