如何在Web应用程序中测试上下文菜单功能?

时间:2010-07-20 07:22:03

标签: selenium automated-tests contextmenu htmlunit webdriver

我正在使用带有上下文菜单的grails应用程序(右键单击)。 上下文菜单是使用Chris Domigan的jquery contextmenu plugin构建的。

虽然上下文实际上有效,但我想进行自动化测试,而我无法确定如何进行测试。

  • 我尝试过Selenium 2.05a(即Webdriver),但没有rightClick方法。
  • 我注意到HtmlUnit有一个rightclick方法,但我似乎无法在点击之前和之后检测到DOM之间的任何差异。

3 个答案:

答案 0 :(得分:5)

目前WebDriver中没有右键单击方法,已为其打开了增强请求 - http://code.google.com/p/selenium/issues/detail?id=161

现在,您可以使用键盘快捷键Shift + F10来模拟右键单击元素:

WebElement element = driver.findElement(....);
element.sendKeys(Keys.chord(Keys.SHIFT, Keys.F10));

答案 1 :(得分:0)

答案 2 :(得分:0)

如果你将Ruby与Capybara一起使用,那么这个应该是有用的:

module Capybara
  module Node
    class Element
      def context_click
        @session.driver.browser.action.context_click(self.native).perform
      end
    end
  end
end