【问题标题】:Selenium WebDriver - Unable to click on a button inside a frame in IE 9Selenium WebDriver - 无法单击 IE 9 框架内的按钮
【发布时间】:2015-04-09 07:00:15
【问题描述】:

我正在使用框架内的按钮。我通过提供driver.switchTo().frame(3) 将控件更改为框架,并在Mozilla Firefox 35.0 中运行它时成功单击了“添加新客户端”按钮。相同的代码在 IE 9 中不起作用。有人可以告诉我可能是什么原因并帮助我解决这个问题吗?

这里是HTML sn-p。

<a id="BtnAddNew" class="x-btn x-unselectable x-box-item x-toolbar-item x-btn-default-small x-noicon x-btn-noicon x-btn-default-small-noicon" tabindex="0" unselectable="on" hidefocus="on" role="button" style="right: auto; left: 389px; margin: 0px; top: 0px;">
  <span id="BtnAddNew-btnWrap" class="x-btn-wrap" unselectable="on">
     <span id="BtnAddNew-btnEl" class="x-btn-button">
     <span id="BtnAddNew-btnInnerEl" class="x-btn-inner x-btn-inner-center" unselectable="on">Add New Client</span>
     <span id="BtnAddNew-btnIconEl" class="x-btn-icon-el " style="" unselectable="on" role="img"></span>
    </span>
  </span>
</a>

【问题讨论】:

  • 我收到以下堆栈消息 - TestNG org.openqa.selenium.NoSuchFrameException: No frame found (WARNING: The server did not provide any stacktrace information) Command duration or timeout: 80 milliseconds 如果有其他信息,请告诉我。
  • 请发布您的 selenium 代码并检查 IE 中的 frame 索引是否正确
  • 硒代码:driver.switchTo().defaultContent(); driver.switchTo().frame(3); driver.findElement(By.xpath("//span[contains(@id,'BtnAddNew-btnIconEl')]")).click();

标签: html selenium selenium-webdriver internet-explorer-9


【解决方案1】:

驱动程序没有切换到确切的帧 ID。假设有多个窗口导致此问题。

【讨论】:

  • @Srinivasulu Reddy,当 WebDriver 运行时,我只有一个窗口。该页面分为三个框架 1. 所有链接都可用的左侧面板,2. 菜单栏和 3. 主容器。主容器中的“添加新客户端”按钮。相同的 selenium 代码在 FireFox 和 Chrome 中运行良好。
  • 这是正在使用的IE驱动服务器的问题。请尝试使用新版本的 IE 驱动程序 (IEDriverServer_2.45.0) 。肯定能解决问题
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 2016-03-02
  • 1970-01-01
  • 2014-01-04
  • 1970-01-01
  • 2016-11-26
  • 1970-01-01
  • 2022-01-23
相关资源
最近更新 更多