右键/上下文使用selenium webdriver在IE11中单击无法正常工作

时间:2019-06-04 10:04:55

标签: javascript java html selenium selenium-webdriver

我必须右键单击页面上的某个元素才能打开/选择上下文菜单。当我尝试执行此操作时,使用Action类会执行单击操作,但不会在元素上执行。它在屏幕上的其他位置执行contextClick()命令,而不是将我作为参数传递给contextClick()的元素。

我正在使用IE11在Windows 10上运行应用程序。

这是页面的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);

它应该像在所有其他浏览器中一样右键单击元素。它会在其他位置而不是给定的元素上执行右键单击。

有人可以帮我吗?

1 个答案:

答案 0 :(得分:1)

在OS更新期间存在IE安装问题。重新成像后似乎可以解决。