0

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

在文档中我只找到了这个功能:

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

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

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

4

1 回答 1

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 而非页面本身有关。看一看..

于 2012-07-23T09:49:02.363 回答