0

Я разрабатываю базовый аддон firefox, и я бы хотел проверить, присутствует ли какой-либо элемент в контекстном меню (отображается после щелчка правой кнопкой мыши в любом месте страницы).firefox sdk, marionette: Утверждение, что элемент присутствует в контекстном меню

Я видел, что мог использовать marionette и selenium-webdriver, но я не могу найти способ щелкнуть в любом месте страницы и утверждать, что данный элемент присутствует в контекстном меню.

Мне сложно просто щелкнуть правой кнопкой мыши (даже не говоря о проверке, находится ли элемент в контекстном меню ...).

В соответствии с the documentation on ActionSequence Я должен использовать click и предоставить щелчок правой кнопкой мыши. Я не мог заставить его работать. Вот то, что я пытался до сих пор

const webdriver = require('selenium-webdriver'); 
const Capabilities = require('selenium-webdriver/lib/capabilities').Capabilities; 
const input = require('selenium-webdriver/lib/input'); 

var capabilities = Capabilities.firefox(); 

capabilities.set('marionette', true); 

var driver = new webdriver.Builder().withCapabilities(capabilities).build(); 

driver.get('http://localhost'); 

// Using a element for opt_elementOrButton 
driver.actions().click(driver.findElement(webdriver.By.css('#changes')), input.Button.RIGHT).perform(); 

// Using right buttons 
//driver.actions().click(input.Button.RIGHT, input.Button.RIGHT).perform(); 

// Using only one argument, as the second argument opt_button is "Ignored if a button is provided as the first argument" 
//driver.actions().click(input.Button.RIGHT).perform(); 

//driver.quit(); 

ответ

0

Вы можете выполнить правую кнопку мыши с помощью Actions.contextClick(), но вы не сможете получить доступ к контекстному меню, чтобы убедиться, что опция присутствует, и т.д. Пример коды выполните щелчок правой кнопкой мыши.

WebElement e = driver.findElement(locator); 
Actions action = new Actions(driver); 
action.contextClick(e).build().perform(); 

Ссылка https://seleniumhq.github.io/selenium/docs/api/java/org/openqa/selenium/interactions/Actions.html#contextClick--

+0

Спасибо, но я использую 'node', и это выглядит как правая кнопка мыши (этот метод' driver.actions(). Выберите (input.Button.RIGHT). perform(); ') не работает с' firefox' (исследование с 'chrome' отлично работает) ... Любая идея, что может пойти не так? – user7890

 Смежные вопросы

  • Нет связанных вопросов^_^