2013-08-26 68 views
0

請問任何人都可以告訴我我的代碼有什麼問題。滴下點擊是不是在硒java webdriver工作?

WebElement dropdown = driver.findElement(By.xpath("//*[@id='idCallType_100']")); 
     List<WebElement> Options = dropdown.findElements(By.tagName("option"));  
     System.out.println(Options.size());  
     for(int i=0;i<Options.size();i++) 
     { 
      WebElement o = Options.get(i); 
      System.out.println(Options.get(i).getText()+ " ---- " + Options.get(i).getAttribute("value")); 
      driver.findElement(By.xpath("//*[@id='idInsertTaskButton']/a")).click();   **// I couldnt able to click on this line** 
      Options.get(i).click(); 
      System.out.println("coming for email time"); 
      driver.findElement(By.xpath("//*[@id='idInsertTask_100']/div/div[1]/input")).click(); 

     } 

我想點擊下拉菜單。首先點擊它的工作正常。形成下一次它不能從這條線執行
Options.get(i).click(); 我知道這裏出了什麼問題。

Thanks! 
+0

它是如何不工作?它錯誤嗎?什麼?嘗試了不同的瀏覽器?什麼瀏覽器?什麼版本的Selenium? – Arran

+0

我使用硒2.35,更新版本的Firefox和鉻在瀏覽器和它的第一次工作,從第二次不工作。而且我錯誤地說這個元素在運動中不可點擊。 謝謝! – user2718138

+0

是否要從下拉菜單中選擇一個項目?嘗試使用「選擇」而不是您正在使用的代碼。 – QAutomatron

回答

0

只是包裝你的WebElement爲選擇對象如下圖所示

Select dropdown = new Select(driver.findElement(By.id("identifier"))); 

一旦做到這一點,你可以在3種方式中選擇所需的值。考慮一個HTML文件中像這樣

<html> 
<body> 
<select id = "designation"> 
<option value = "MD">MD</option> 
<option value = "prog"> Programmer </option> 
<option value = "CEO"> CEO </option> 
</option> 
</select> 
<body> 
</html> 

我們確定下拉做

Select dropdown = new Select(driver.findElement(By.id("designation")));

要選擇自己的選擇說「程序員,你可以做

dropdown.selectByVisibleText("Programmer ");

dropdown.selectByIndex(1);

dropdown.selectByValue("prog");