Как сделать правый клик в тесте селена - PullRequest
1 голос
/ 20 сентября 2011

Я использую recursiveTreeNodesAdaptor в шов.И я хочу добавить дочернее это дерево через contextMenu, и когда пользователь щелкнет правой кнопкой мыши по дереву, откройте контекстное меню и щелкните левой кнопкой мыши, затем откройте модальную панель.Я хочу сделать это.

Когда я пытаюсь написать тест на селен в этом потоке, я не нажимаю, чтобы настроить и открыть contextMenu.Я пытаюсь в selenium.contextmenu (xpath), но у меня ничего не получается.

Итак, как я могу щелкнуть вправо


Я попытался смоделировать щелчок правой кнопкой мыши с расширением пользователя.Моя функция ниже:

Selenium.prototype.doContextMenuClick = function(element){
var evt = document.createEvent('MouseEvents');

var RIGHT_CLICK_BUTTON_CODE = 2; // the same for FF and IE

evt.initMouseEvent('contextmenu', true, true,
     document.defaultView, 1, 0, 0, 0, 0, false,
     false, false, false, RIGHT_CLICK_BUTTON_CODE, null);

if (document.createEventObject){
    // dispatch for IE
return document.fireEvent('onclick', evt);
}
else{
   // dispatch for firefox + others
   return !document.dispatchEvent(evt);
}};

Мне удалось вызвать функцию из IDE.Но теперь я получаю сообщение об ошибке «this.waitForCondition не является функцией».В чем дело?Есть ли у вас какие-либо идеи?

Заранее спасибо.

Ответы [ 2 ]

1 голос
/ 01 октября 2013

Последний селен имеет пространство имен OpenQA.Selenium.Interactions Namespace. проверить это здесь .

см. Мой другой пост здесь

1 голос
/ 21 сентября 2011

Попробуйте использовать fireEvent для этого элемента.Вы также должны взглянуть на этот пост , который, кажется, примерно такой же проблемы.

...