2013-05-28 82 views
0

我無法使用以下代碼使用網絡驅動程序自動化鼠標。無法定位元件:如果任何人得到溶液無法使用網絡驅動程序自動化鼠標

Actions builder = new Actions(driver); 
WebElement el=driver.findElement(By.linkText("Account")); 
System.out.println(el.getText()); 
builder.moveToElement(el); 
Thread.sleep(5000); 
WebElement ele1=driver.findElement(By.xpath("/html/body/form/div[3]/div/div/div[2]/ul/li[4]/div/ul/li[4]/a")); 
System.out.println(ele1.getText()); 
builder.moveToElement(ele1); 
builder.click(); 
builder.perform(); 
Thread.sleep(5000L); 

org.openqa.selenium.NoSuchElementException我希望{ 「方法」: 「的xpath」, 「選擇器」:「/ HTML /體/形式/ div [3]/div/div/div [2]/ul/li [4]/div/ul/li [4]/a「}

它不能識別下拉元素。菜單中的項目不可見,這是此錯誤的原因。

+0

Yes.org.openqa.selenium.NoSuchElementException:無法找到元素:{ 「方法」: 「的xpath」, 「選擇器」:「/ HTML /體/形式/ DIV [3]/DIV /格/ div [2]/ul/li [4]/div/ul/li [4]/a「} _Its不能識別下拉元素,導致菜單中的項目不可見,導致此錯誤。在此先感謝 – Anna

+0

對不起,我不能公開發布,因爲安全原因。是否有任何其他選項給控制菜單列表,除了「行動」。所以我可以試試這個。 – Anna

回答

0

我看到你沒有包括SUT-而且我看到你有不正確的xpath問題。你需要解決這個問題。如果你無法弄清真正的xpath。也許你應該使用Selenium IDE從腳本中獲取上下文。

一旦你整理出來。您可以嘗試以下方法來激發鼠標移動。

WebElement element = driver.findElement(By.xpath("/html/body/form/div[3]/div/div/div[2]/ul/li[4]/div/ul/li[4]/a")); 
Locatable hoverItem = (Locatable) element; 
Mouse mouse = ((HasInputDevices) driver).getMouse(); 
mouse.mouseMove(hoverItem.getCoordinates());