我在 Firefox 12 上使用 Selenium IDE 1.8.1 。我们的一个应用程序使用“Yahoo UI”基于按钮,当我试图点击它们时,我一直看到Selenium的结果不一致。例如,单击此按钮(输入id =“submitButton”)应弹出一个模态对话框 - 大约一半时间提交数据但模式对话框永远不会弹出。
我正在使用命令:click | css=#submitButton |
<input id="icdParticipantAddressForm_icdParticipantId" type="hidden" value="1022" name="icdParticipantId">
<input id="submitButton" class="saveButtonImage" type="submit" onclick="return YAHOO.ourAddress.avwController.verifyAddresses();" title="save" value="Next" style="float:right;">
<a href="/url?icdParticipantId=1022>
谢谢大家!
附:我也试过了
fireEvent | css=#submitButton | click
具有相同的结果
答案 0 :(得分:0)
如果你根本无法访问它;我假设它被隐藏(在框架后面?)。您经历过不一致的事实&#39;每次运行测试都会让我相信你有超时问题。看看你得到的是什么类型的错误信息会很有用。
获得所需按钮的最佳方式是通过XPATH;将下面的代码粘贴到代码中试图找到按钮的部分。
driver.find_element(:xpath, "//input[@id='submitButton']")
再次运行测试,看看这是否有任何帮助。如果没有尝试下面的改进代码将覆盖您,以防页面需要时间加载(即您的按钮尚不可用)。
!30.times { if (driver.find_element(:xpath, "//input[@id='submitButton']") rescue false) then break else sleep 1; end }