2013-11-07 4 views
4

Использование Selenium 2.0 WebDriver (java), мне нужно проверить некоторую навигацию (вращать, панорамировать ...)Selenium WebDriver - Как удерживать правую кнопку мыши?

Мне нужно уметь удерживать кнопку ПРАВО во время перемещения мыши.

Аналогичным образом, я должен уметь удерживать кнопку MIDDLE во время перемещения мыши.

Возможно, это возможно только с помощью кнопки LEFT.

Actions actions = new Actions(driver); 
actions.clickAndHold().perform(); 

После вопроса, я имею дело не с какой-либо меню, кнопки, виджет, но с 3D-среде, как GoogleMap, где мне нужно, чтобы имитировать панорамирование, поворот и масштабирование с помощью средней кнопки, кнопки ВПРАВО и даже колесико мышки. ..

Любая помощь?

ответ

0

Если его не меню браузера или окна, Если его что-то вроде веб контекстного меню вы можете использовать следующий код его в C# Java должен быть похож

Actions actions = new Actions(WebDriver); 
actions.ContextClick(webElement) 
               .SendKeys(Keys.Down) 
               .SendKeys(Keys.Down) 
               .Build() 
               .Perform(); 

вы можете использовать комбинацию actions.ClickAndHold() и actions.MoveToElement() чтобы создать эффект сопротивления, я использую их для перемещения портала виджетов

скажите, пожалуйста, какой тип меню вы работаете на

+0

Спасибо за ваш ответ. Я не работаю над любым меню, виджетами или кнопками. Я работаю над представлением 3D-среды, например googleMap, мне нужно смоделировать панорамирование, поворот и масштабирование с помощью кнопки мыши и правой кнопки. – user2964961

+0

Это не отвечает на вопрос. contextClick() посылает мышь и мышь вверх. ОП запрашивает просто мышь. Похоже, что этой функции не существует, и вы должны напрямую использовать класс Mouse. – BadZen

0

вы можете использовать класс робота выполнять то же самое. Для правильного использования нажмите Button3 и для среднего использования Button2

Код для Щелкните правой кнопкой мыши

Robot robot=new Robot(); 
robot.mousePress(InputEvent.BUTTON3_DOWN_MASK); 
robot.mouseRelease(InputEvent.BUTTON3_DOWN_MASK); 

Код для средней кнопки

Robot robot=new Robot(); 
robot.mousePress(InputEvent.BUTTON2_DOWN_MASK); 
robot.mouseRelease(InputEvent.BUTTON2_DOWN_MASK); 
Смежные вопросы