你如何使用硒进行右键点击?

时间:2010-01-31 12:06:27

标签: selenium right-click

即时尝试使用selenium进行右键单击,有关如何执行此操作的任何想法吗?

5 个答案:

答案 0 :(得分:12)

根据OpenQA.Selenium.Interactions Namespace

// step 1 - select the element you want to right-click
var elementToRightClick = this.Driver.FindElement(By.Id("elementtoclickonhasthisid"));
// step 2 - create and step up an Actions object with your driver
var action = new OpenQA.Selenium.Interactions.Actions(this.Driver);
action.ContextClick(elementToRightClick);
// step 3 - execute the action
action.Perform();

答案 1 :(得分:4)

请参阅docroots's answer了解硒。

要通常模拟JavaScript中的右键单击,请查看JavaScript simulate right click through code

答案 2 :(得分:2)

对于我的问题(右键单击后打开弹出窗口的元素),使用selenium的:mouse_down_right()然后mouse_up_right() 工作也很好。感谢。

答案 3 :(得分:1)

我已经尝试了ActionSequence并且它有效。

找不到ContextClick功能,您应该使用click。

所以,应该如下:

driver.actions().click(element,2).perform();

元素是您的网络元素,2表示右键单击。

答案 4 :(得分:1)

Selenium提供了一种右键单击方法 - ContextClick:

        public void RightClick(IWebElement target)
        {
            var builder = new Actions(driver);
            builder.ContextClick(target);
            builder.Perform();
        }