右键单击Selenium 2

时间:2011-11-04 09:28:34

标签: selenium selenium-webdriver right-click web-testing

我在Linux下使用Selenium 2(Web Driver)和FireFoxDriver。

我无法使用坐标在WebElement上执行右键单击或其他操作。我也无法移动鼠标指针。

我试图使用“Actions”对象:

Actions actions = new Actions(ffDriver);
WebElement we = ffDriver.findElement(By.linkText("WhatEver"))
actions.contextClick(we).build().perform();

我也试过使用“鼠标”对象:

Mouse mouse = ((HasInputDevices)ffDriver).getMouse();
mouse.contextClick(we.getCoordinates());

这些代码不会失败,但它们不会做任何事情。

但是,如果我在上面的两个示例中执行常规点击,它会按预期工作。

有人知道这有什么问题吗?

谢谢。

1 个答案:

答案 0 :(得分:2)

最后我理解了这个问题。

在Selenium 2上,web元素上的“contextClick”函数不会模拟右键单击该元素,它只是激活放置在元素的HTML代码中的“onContextMenu()”事件。

因此,如果您想访问这种上下文菜单,应该在HTML代码上处理。