java - Firefox V2.50.0 的 Webdriver 问题

标签 java selenium selenium-webdriver

下面是测试应用程序中某个月份下拉列表的 HTML。

<div class="dd ddcommon form-control respstyled-select-monthAC ng-isolate-scope borderRadius" id="month2_msdd" tabindex="0" style="z-index: 1;">
    <div class="ddTitle borderRadiusTp"><span class="divider"></span><span class="ddArrow arrowoff" id="month2_arrow"></span>
        <span class="ddTitleText "  id="month2_title"><span class="ddlabel">month</span><span class="description" style="display: none;"></span></span></div><input type="text" id="month2_titleText" autocomplete="off" class="text shadow borderRadius" style="display: none;">
    <div class="ddChild ddchild_ border shadow" id="month2_child" style="z-index: 1; display: none; position: absolute; max-height: 288px; top: 28px;">
        <ul><li class="enabled _msddli_ selected"><span class="ddlabel">month</span><div class="clear"></div></li>
            <li class="enabled _msddli_"><span          class="ddlabel">January</span><div class="clear"></div></li>
            <li class="enabled _msddli_"><span class="ddlabel">February</span><div class="clear"></div></li>
            <li class="enabled _msddli_"><span class="ddlabel">March</span><div class="clear"></div></li>
            <li class="enabled _msddli_"><span class="ddlabel">April</span><div class="clear"></div></li>
            <li class="enabled _msddli_"><span class="ddlabel">May</span><div class="clear"></div></li>
            <li class="enabled _msddli_"><span class="ddlabel">June</span><div class="clear"></div></li>
            <li class="enabled _msddli_"><span class="ddlabel">July</span><div class="clear"></div></li>
            <li class="enabled _msddli_"><span class="ddlabel">August</span><div class="clear"></div></li>
            <li class="enabled _msddli_"><span class="ddlabel">September</span><div class="clear"></div></li>
            <li class="enabled _msddli_"><span class="ddlabel">October</span><div class="clear"></div></li>
            <li class="enabled _msddli_"><span class="ddlabel">November</span><div class="clear"></div></li>
            <li class="enabled _msddli_"><span class="ddlabel">December</span><div class="clear"></div></li></ul></div></div>

我使用以下脚本从下拉列表中选择一月选项:

driver.findElement(By.xpath(//*[@id="month2_arrow"])).click();
driver.findElement(By.xpath(//div[@id='month2_child']/ul/li[2]/span)).click();

此代码将单击两次以从月份下拉列表中选择一月选项。在 Selenium Webdriver 2.47 之前,此代码工作正常。当我将selenium升级到2.50时,这两个步骤都执行成功,但该选项未选中。

最佳答案

Selenium 提供了一个接口(interface)作为 javascriptexecutor

你可以这样做:-

      WebElement element= driver.findElement("YOUR Locator"));
      JavascriptExecutor executor = (JavascriptExecutor) driver;
      executor.executeScript("arguments[0].click();", element);

希望对你有帮助:)

关于java - Firefox V2.50.0 的 Webdriver 问题,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/35218419/

相关文章:

javascript - 无法将对象转换为 Selenium 中的字符串

通过 Selenium chromedriver 进行 Python 代理身份验证

java - 由 java 中的子类类型 id 安全转换

java - 如何通过 Kotlin Gradle 和 -D 为我的测试提供系统属性

python - 如何在不重新加载页面的情况下刷新 Selenium Webdriver DOM 数据?

javascript - 比较 Cypress 中的文本值

java - 将 map 复制到其他 map 时丢失对象信息

java - 是什么导致 "NoSuchMethodError: org.springframework.beans.BeanWrapper.setAutoGrowCollectionLimit(I)V?"

java - 使用 selenium 单击菜单选项

java - 使用 TestNg DataProvider 时出错必须返回 Object[][] 或 Iterator<Object>[],而不是类 [[Ljava.lang.Object;