【发布时间】:2018-03-02 18:56:32
【问题描述】:
我正在尝试在 ruby 中使用 watir 来自动为我填写表格。但是,当表单完成时,按钮元素“继续”未启用。当我在 chrome 中运行测试时它可以工作,但是当我使用 phantomJS 时它不起作用。
例如,在 phantomJS 中,表单认为我没有完成表单,即使我完成了。它显示如下(不起作用)。
当我运行我的脚本但我用 chrome 而不是 phantomJS 打开浏览器时,我得到以下(有效):
有其他人经历过吗? 知道如何解决这个问题吗?
我试过了: - 睡眠时间更长 - 标记到其他文本字段 - 填写中间名字段
似乎没有启用“继续”按钮
【问题讨论】:
-
你试过做一些老式的调试吗?也许将您的验证功能输出到控制台并将其记录在您的 phantomJS 测试中?这也可能与 Angular 有关,因此您可能需要扩展标签以包含它。
-
我没试过。如何将验证函数输出到控制台?
-
PhantomJS 几乎已被弃用。 Chromedriver 速度更快,如果您绝对需要无头模式,则无头模式几乎功能齐全。
-
我将 chrome 驱动程序安装到 heroku 并上传了我的脚本以打开 chrome 而不是 phantomjs 但是它仍然没有启用“继续”按钮
-
chrome 的 js 引擎完全有可能比 phantomJS 更快。如果系统在填充每个字段后进行某种评估,那么当您尝试填充姓氏字段。在尝试填写姓氏之前,您可能需要引入一个非常小的延迟,如安德烈的回答所示,您发送的屏幕截图中显示为空。
标签: html ruby heroku phantomjs watir