Webdriver - 在特定坐标处打开上下文菜单

时间:2012-07-23 09:17:23

标签: ruby webdriver contextmenu

我有一个大的画布区域,它对该区域的不同部分有不同的上下文菜单操作。 所以我需要使用特定坐标执行上下文菜单点击。

在文档中我只发现了这个功能:

element = @@driver.find_element(:xpath, xpath_value)
@@driver.action.context_click(element).perform

但我无法为此上下文点击指定坐标。它是有效的,但只在画布区域的中心。

还有其他方法可以打开上下文菜单吗? 我也尝试过用键盘打开它,但我的测试页不支持上下文菜单,按“Shift”+ F10,只需按键盘上的“菜单键”。 我可以在WebDriver的键盘上按菜单键吗?

1 个答案:

答案 0 :(得分:1)

require 'win32ole'

require "selenium-webdriver"

driver = Selenium::WebDriver.for :firefox
driver.navigate.to('http://www.elmcomputers.com/Shortcut_Keys.pdf')

skey = WIN32OLE.new('Wscript.Shell')

skey.SendKeys('+{F10}') #SHIFT+f10

经过测试和工作。尝试使用您的页面查看会发生什么。我知道你提到它不会接受关键组合,但我认为这与Windows有关,而与页面本身有关。看看..