我无法使用Selenium Webdriver

时间:2015-06-16 18:50:32

标签: selenium selenium-webdriver

我正在尝试使用selenium Webdriver自动化应用程序。我经常遇到点击操作无法在WebElements上运行的场景。

例如,在html块中看起来像:

<div id=staticid>
  <table>
    <tbody>
      <tr id="tr1" class="class1" tabindex="-1" data-recordindex="0" data-recordid="1" data-boundview="gridview-1211" role="row">
        <td id="td1" class="class2 " role="gridcell">
          <div class="class3 " style="text-align:left;" unselectable="on">Content 1</div>
        <td id="td2" class="class6" role="gridcell">
          <div class="class5" style="text-align:center;" unselectable="on">
            <img class="class4" src="chekboximage">
          </div>
        </td>
        <td id="td3" class="class8" role="gridcell">
          <div class="class5" style="text-align:center;" unselectable="on">
            <img class="class4" src="checkboximage">
          </div>
        </td>
      </tr>
    </tbody>
  </table>
</div>

id是动态生成的,类就像“grid-inner ...”等。 (我更换了它们以使它更小) 最后两个元素显示为复选框。 单击该块时,td块的类将更改,并且似乎单击该复选框。

我尝试使用driver.findElement(By.xpath()),csspath和所有内容单击复选框。点击操作似乎已成功执行,但所需的结果,即正在检查的复选框不会发生。

我使用Selenium IDE验证了我的xpath和csspath。使用“查找”选项正确定位元素。单击操作也会执行,但复选框仍未选中。

我一直试图将这项工作推迟近一周。 有人可以帮帮我吗?

代码确实在点击时改变了图像(我在点击之前和之后比较了图像源)。但是没有可见的“onclick()”调用(我不确定是否有其他方法可以在click上调用java脚本功能。如果有,请告诉我。)无论如何,我试着点击块。它适用于Se-IDE和Se-IEDriver,但不适用于FireFoxDriver。

1 个答案:

答案 0 :(得分:0)

尝试moveToFirst()这也与点击相同但键盘笔划相同。希望它有效。