2011-06-21 67 views
4

作爲項目的一部分,我嘗試使用Selenium 2進行自動化。我在下面遇到問題如何在WebDriver中雙擊並右鍵單擊?

  1. 如何使用Selenium雙擊Web元素?

  2. 我該如何右鍵單擊某個Web元素以從彈出菜單中選擇一個項目?

+0

您正在使用哪種編程語言? Java,C#還是什麼? –

回答

4
  1. 有2種方式雙擊元素:

    • 使用DefaultActionSequenceBuilder

      IActionSequenceBuilder action = new 
      DefaultActionSequenceBuilder(driver); 
      action.DoubleClick(element).Build().Perform(); 
      
    • 或使用WebDriverBackedSelenium

      ISelenium selenium=new WebDriverBackedSelenium(driver, driver.Url); 
      selenium.Start(); 
      selenium.DoubleClick("xpath=" + some_xpath);// you could use id, name, etc. 
      
  2. 您可以使用ISelenium界面中的ContextMenu方法來模擬右鍵單擊。例如:

    ISelenium selenium=new WebDriverBackedSelenium(driver, driver.Url); 
    selenium.Start(); 
    selenium.ContextMenu("xpath=" + some_xpath);// you could use id, name, etc. 
    
0

用鼠標雙擊

WebElement ele = driver.findelement(By.id("id_of_element")); 

Actions action = new Actions(driver) 
action.doubleClick(ele).perform(); 

右鍵點擊

WebElement ele = driver.findelement(By.id("id_of_element")); 

Actions action = new Actions(driver) 
action.contextClick(ele).build().perform(); 

如果你想在彈出其執行右鍵點擊後打開第二個選項你可以使用下面的代碼

action.contextClick(ele).sendKeys(Keys.ARROW_DOWN).sendKeys(Keys.ARROW_DOWN).build().perform();