登录按钮适用于火狐浏览器,但不适用于幻影



我有一个登录表单提交按钮,如下所示:

<input type="button" name="BUTTON1" value="Login" title="Login" class="Bottone1" onclick="if( gx.evt.jsEvent(this)) {gx.evt.execEvt('EENTER.',this);} else return false;" onfocus="gx.evt.onfocus(this, 26,'',false,'',0)">

在我的 ruby 脚本中使用 watir-webdriver 和 firefox 后端,这段代码工作正常:

browser.button(:name => "BUTTON1").click

不幸的是,如果我切换到 phantomjs 后端使用此代码没有任何反应,屏幕截图显示我被困在同一页面中。

===更新:

看起来按钮已触发,但重定向不起作用。实际上,如果在单击按钮后我手动转到所需的页面,它就会让我进入,因此提交了表单。

我无法解释为什么,但 phantomjs 对我来说也有点问题......同样的问题...我把它煮成 2 种模式:

1:.计时问题,您需要在单击之前添加睡眠,以便为元素/页面加载留出时间(即使是可见/加载检查也会失败)

2:. 由于某种原因单击操作不会触发事件...我不得不添加如下所示的内容来解决方法:

3.times do 
  element.visible? ? element.click : break
end

最后一种情况,您可以尝试与原始评论中的建议类似的操作:

element.trigger('click')...

相关内容

  • 没有找到相关文章

最新更新