问题标签 [poltergeist]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
ruby-on-rails - 使用 poltergeist、rspec、capybara、spork guard 和 rails 3.2.12 登录子域
我无法让我的测试在子域上登录用户。
更新
我再次尝试使用 selenuim。现在我在 test.log 中得到了这个错误。
我猜测 thespec_helper.rb
和 therails s -e test -p 3001
都在不同的步骤上弄乱了测试数据库,这让 postgresql 痛苦地哭了出来。
但是,如何在不需要在测试环境中启动 rails 服务器的情况下在需要身份验证的子域上测试 javascript?
原始问题
这个规范给了我
这个错误
当我不使用时,js: true
一切都很好。但是,poltergeist 和 phantomjs 无法登录。
spec_helper
exception - 在 Poltergeist 中未处理的异常测试失败
当我向 application.js 添加一些垃圾时,我从 Poltergeist 收到以下错误:
但是,当我只是抛出异常时,它会被忽略(并且由于缺少页面功能而导致测试失败)。如果页面有未处理的异常,我可以让 Poltergeist 失败吗?或者至少发出警告?
poltergeist - 我可以用 execute_script 修补 phantomjs 浏览器 api 吗?
我试图测试一个禁用了一些原生 JavaScript 功能的应用程序,例如 querySelector ...
所以我认为这可能会在致电访问之前起作用:
但它不起作用,关于我如何实现这一目标的任何想法?
干杯约翰
ruby-on-rails - RSpec、Capybara 和带有 rails 的 ajax 请求
所以我认为 javascript 方法看起来像这样:
天气是我的应用程序中的控制器方法。我将如何处理响应,所以当我运行测试时,它可以工作?这是我的测试的样子:
这是视图的简化版本/dashboard/RSF/pv
我究竟做错了什么?我的测试失败了,但它在浏览器中运行良好。
ruby-on-rails - Capybara、Poltergeist 和 Phantomjs 并在正文中给出空洞的回应
我从 phantomjs 得到一个空文档。我正在尝试使用 Capybara 和 Poltergeist 为 Capybara 设置 phantomjs 驱动程序。
我如下创建了一个模块,并将其包含在需要连接的文件中。
然后,加载页面如下:
然后,最后,调用 load_page
这是来自 poltergeist 的调试响应
如您所见,响应只是一个空白文档,只有 html、head 和 body 标记,而 body 标记中没有任何内容。
我在做什么错?观察网络流量,我从主机(在这种情况下为 smashingmagazine.com)得到了完整的响应。在响应回来之后,我不知道发生了什么。有时 phantomjs 也会崩溃,而在其他情况下,它会通过空的身体。这是 phantomjs 崩溃时在 STDERR 上打印的最后一行
capybara - 使用 Capybara 和 Poltergeist 驱动程序将文件下载到特定文件夹
我正在使用 Capybara 和 Poltergeist 驱动程序编写验收测试。我需要验证下载的 CSV 文件的内容。
- 我尝试了各种方法来呈现页面本身的内容,而不是下载它。
- 还尝试更改 mime 类型,但它不起作用。
最后,我想选择将文件下载到特定文件夹中,然后使用核心 ruby 库读取 CSV 文件。
为了实现这一点,当 poltergeist 驱动程序单击下载链接时,我希望它处理弹出窗口并直接在给定文件夹中下载文件。
在 Selenium 的 chrome 和 firefox 驱动程序中,我可以选择配置配置文件来处理弹出窗口和配置下载目录。
使用 poltergeist 有没有这样的选择?任何信息都会有所帮助。
ruby - 使用 Filepicker.io 和 Capybara 进行功能测试
我目前正在对 Filepicker.io 上传表单进行功能测试,但无法让文件上传正常工作。我正在为 Capybara 使用Poltergeist驱动程序,并且从我能够进行的调试中,Filepicker iframe 永远不会加载。我已经通过使用 Poltergeist 的远程调试确认了这一点。
这是测试代码的示例:
并产生错误:
尝试通过 javascript 控制台手动触发 Filepicker 也不会产生任何结果。
cucumber - 切换到 Poltergeist 时出现 NotImplementedError
我有这个与 Selenium 一起使用的黄瓜步骤定义,但是当我使用poltergeist驱动程序NotImplementedError
尝试它们时我得到了。
phantom.js 已安装,我什至可以从看起来正确的步骤定义中截取屏幕截图。我正在测试一个 Ember.js/Rails 应用程序。看到它正确地访问了页面,但是当我尝试查找链接时它失败了。
确切的错误是这样的:
capybara - Poltergeist Rspec If-None-Match If-Modified-Since 标头
我有一个功能规范,可以向同一个 url 发出两个访问请求。预期的行为是第二个请求应该返回 304。但是这并没有发生。我已经设置了 phantomjs_options: ['--disk-cache=true'] 但这似乎没有达到预期的效果。是否需要配置其他一些设置以使用 If-None-Match 和 If-Modified-Since 标头?
下面的一个例子:
谢谢,
javascript - 使用 phantomjs 无头运行 jasmine 规范
我一直在使用 jasmine-headless-webkit 在我的 Rails 3.2 应用程序上运行我的 jasmine 规范,但我最近切换到 phantomjs/poltergeist 来运行我的请求规范,所以我需要升级我的 jasmine 测试以在 phantom 上运行。我不想在我的 CI 服务器上使用 xvfb。
有没有人有任何在控制台中使用 phantom 运行 jasmine 测试的好方法?我在网上发现的关于它的信息令人惊讶地少。