2014-10-01 87 views
1

我一直在嘗試爲類似查詢提供的所有可能的答案。如何在Java WebDriver中使用Selenium WebDriver選擇2nd Level SubMenu

菜單的我的佈局設計結構:

MainMenu1,Manimenu2 ....等 在每個MAINMENU

Submenu1>Item1, Item2, Item3 
    Submenu2>Item1, Item2, Item3 
    Submenu3>Item1, Item2, Item3 

要到項目1或項目2或項目3,我們必須移動將鼠標懸停在Mainmenu1> submenu1上,然後單擊Item2

我能夠使用mouse-hover命令並打開Mainmenu,但無法通過它。

有什麼建議嗎?

謝謝。

+0

你使用** ** AdvancedUserInteractions如果是,那麼發生了什麼?請告訴我們你是如何解決這個問題的。 – 2014-10-01 12:24:14

回答

0

後鼠標懸停mainmenu1你需要找到submenu1,然後執行鼠標懸停

 Actions builder = new Actions(driver); 
     WebElement mainmenu1 = driver.findElement(By.xxxxx()); 
     builder.moveToElement(mainmenu1).build().perform(); 
     Thread.sleep(500); //add a wait 
     WebElement submenu1= driver.findElement(By.xxxxx()); //Find the submenu 
     builder.moveToElement(submenu1).click().build().perform(); 
     Thread.sleep(500); 
+0

您好已經使用了下面的代碼。 – 2014-10-01 13:11:14

+0

Actions a = new Actions(driver); WebElement menuHoverLink = driver.findElement(By.cssSelector(「#admin」)); a.moveToElement(menuHoverLink); WebElement subLink = driver.findElement(By.cssSelector(「。companyinfo」)); a.moveToElement(subLink); Thread.sleep(5000L); WebElement subLink3 = driver.findElement(By.className(「companyinfo」)); a.moveToElement(subLink3); a.click(); ();執行(); Thread.sleep(5000L); (1)> ul> li:nth-​​child(3)> a> span「));我們可以通過下面的例子來說明如何使用WebElement。 actions.moveToElement(subLink4); a.click(); 。a.build()執行(); – 2014-10-01 13:19:38

+0

我可以看到它懸停打開;但不能點擊打開; – 2014-10-01 13:20:12

0

試試這個,我認爲這將有助於你

new Actions(wd) 
    .moveToElement(
      wd.findElement(By 
        .linkText("MainMenu1"))) 
    .build().perform(); 
Thread.sleep(500); 
wd.findElement(By.linkText("Item1")).click(); 
相關問題