Мне нужно щелкнуть правой кнопкой мыши элемент на странице, чтобы открыть / выбрать контекстное меню.Когда я пытаюсь сделать это, используя класс Action, он выполняет операцию щелчка, но не над элементом.Он выполняет команду contextClick()
в другом месте экрана вместо элемента, который я передал в качестве аргумента contextClick()
.
Я запускаю приложение в Windows 10 с IE11.
ВотHTML-код страницы.
<ul id="menus" class="list" style="height: 613.734px;">
<li id="1" class="default">
<div class="inner-div" style="display: inline;">
<span class="menu"></span>
<span class="menu-title">Delete All</span>
</div>
<div class="menuBtn" title="Hide"></div>
</li>
<li id="2" class="default">
<div class="inner-div" style="display: inline;">
<span class="menu"></span>
<span class="menu-title">Delete User</span>
</div>
<div class="menuBtn" title="Hide"></div>
</li>
<li id="3" class="default">
<div class="inner-div" style="display: inline;">
<span class="menu"></span>
<span class="menu-title">Add User</span>
</div>
<div class="menuBtn" title="Hide"></div>
</li>
</ul>
Это код, который я пытаюсь использовать.
WebElement element = driver.findElement(By.xpath("//li[.='Add User']");
Actions action= new Actions(driver);
action.contextClick(element).perform();
Я пробовал также с нижеуказанными InternetOptions, но безуспешно.
InternetExplorerOptions ieCapabilities = new InternetExplorerOptions();
ieCapabilities.setCapability("nativeEvents", true);
ieCapabilities.setCapability("unexpectedAlertBehaviour", "accept");
ieCapabilities.setCapability("ignoreProtectedModeSettings", true);
ieCapabilities.setCapability("disable-popup-blocking", true);
ieCapabilities.setCapability("enablePersistentHover", false);
new InternetExplorerDriver(ieCapabilities);
Однако следует щелкнуть правой кнопкой мыши элемент, как и во всех других браузерах;он выполняет правый клик в другом месте вместо указанного элемента.
Может кто-нибудь помочь мне в этом?