2013-10-16 1 views
0

셀렌 웹 드라이버를 사용하여 다음 메뉴의 '요리 책'을 클릭하고 싶습니다. 그것은 마우스를 가리키고 나타나고 그것은 자바 스크립트 메뉴입니다. 도와주세요. 다음은 해당 메뉴의 html보기입니다. 이 링크를 나타냅니다 텍스트를 클릭 할 수 있습니다셀레늄 webDriver로 자바 스크립트 메뉴에 액세스

driver.findElement(By.linkText("Cookbooks")).click(); 

<li> 
<a href="#"> 
<span>Set Up</span> 
</a> 
    <ul> 
    <li> 
     <a onclick="validateLevelOfOwnership('MaintainCookbook.html');return false;" href="javascript:void(0)"> 
     <span>Cookbooks</span> 
     </a> 
    </li> 
    <li> 
     <a onclick="validateLevelOfOwnership('MaintainCategories.html');return false;" href="javascript:void(0)"> 
     <span>Categories</span> 
     </a> 
    </li> 
    <li> 
     <a onclick="validateLevelOfOwnership('MaintainDistributors.html');return false;" href="javascript:void(0)"> 
     <span>Distributors</span> 
     </a> 
    </li> 
    <li> 
     <a href="/recipeManager/distributorItem/listItems.action"> 
     <span>Distributor Items</span> 
     </a> 
    </li> 
     <li> 
     <a onclick="validateLevelOfOwnership('MaintainPreparationMethodsAndConversions.html');return false;" href="javascript:void(0)"> 
     <span>Prep Methods & Conversion Ratios</span> 
     </a> 
     </li> 
    </ul> 
</li> 

답변

1

다음과 같은 코드를 시도 할 수 있습니다 ..

0

당신은 여기에 '작업'클래스를 사용할 수 있습니다 사용자 제스처를 에뮬레이션합니다.

다음은 메뉴를 수행하기 위해 작성한 코드입니다. 루트 메뉴 위로 마우스를 이동 한 다음 하위 메뉴를 클릭해야합니다. 설명 목적으로, 사이트 : http://www.milonic.com/menusample15.php을 촬영했습니다.

public static void main(String[] args) throws InterruptedException { 

    WebDriver driver = new FirefoxDriver(); 
    driver.get("http://www.milonic.com/menusample15.php"); 

    //element refering to 'Milonic' menu 
    WebElement rootMenu = driver.findElement(By.linkText("Milonic")); 

    Actions action = new Actions(driver); 

    //move to 'Milonic' first 
    action.moveToElement(rootMenu).perform(); 
    //wait for the sub-menu to come up 
    Thread.sleep(1000); 
    //inside sub-menu click on 'FAQ' 
    action.moveToElement(driver.findElement(By.linkText("FAQ"))).click().perform(); 
} 
관련 문제