ruby – capybara找到按钮,但点击它什么也没做

更新:我删除了大多数
javascript依赖项,它工作.不知道哪个库或代码是邪恶的部分,我不需要它.

简单的形式,两个输入字段和一个按钮

fill_in 'cellNumber', :with => '13245678'
fill_in 'password', :with => 'mypass'
click_button('OK')

它找到按钮,但没有任何反应.

重要!,如果我点击我自己,一切都按预期工作.

   <button type="submit" id="loginid">OK</button>
</form>

使用ruby-debug,我发现find_button(“OK”).click返回“”.如果没有找到会引起错误.
如果我在firefox窗口内手动点击,在睡眠或调试中暂停capybara测试,我看到(测试窗口处于焦点)按钮周围出现了一个蓝框,因为它已经被选中了.

无论如何,我现在接近检查精神设施……有什么建议吗?

最佳答案 Javascript可能会干扰.该页面对Squeezebox,Mootools-1.2.5和Function.cbb.js有一些不必要的依赖,所以我只是删除它们并重构以使用更多的css功能(如悬停)和专门的js.我对此并不印象深刻.尽管如此,我希望这个答案可以帮助其他人.

更新:似乎Mootools与Selenium不兼容.没有包含任何其他JS库/代码而不是mootools核心库,它就会中断.我试过1.2.5核心和1​​.3.2全紧凑.

点赞