Capybara-Webkit CSS 支持

Posted

技术标签:

【中文标题】Capybara-Webkit CSS 支持【英文标题】:Capybara-Webkit CSS Support 【发布时间】:2013-02-28 19:08:09 【问题描述】:

我目前正在使用 capybara/rspec 来测试 div 是否不可见(显示:无),但如果样式是在 CSS 文件中定义而不是直接在页面中定义,这似乎总是返回 true。

visit "http://#host/"
page.find('#sort-by').should_not be_visible

这是 webkit 驱动的问题吗?我在#visible? 的文档中注意到他们指出结果可能非常适合 CSS 支持。 http://rubydoc.info/gems/capybara/0.4.0/Capybara/Element#visible%3F-instance_method

Capybara/webkit 的后续版本是否有进一步的支持?我们已经考虑过升级,但对我们来说这样做并不是微不足道的。

我正在使用以下版本的 capybara 和 webkit 驱动程序

Capybara 1.1.4
Capybara-webkit 0.13.0

【问题讨论】:

你试过 have_css 匹配器吗? 我有。似乎如果您将样式直接添加到 html 页面,它可以检测到它们,但是它不会加载(或搜索)链接的 CSS 样式表。 【参考方案1】:

尝试:

expect(page).not_to have_selector("#sort-by")

【讨论】:

以上是关于Capybara-Webkit CSS 支持的主要内容,如果未能解决你的问题,请参考以下文章

Web 驱动程序解释

使用 RSpec + capybara-webkit 检查 JS 框是不是存在

Capybara-webkit 抛出找不到变量:$

Capybara-Webkit:缺少 js/React 并且找不到变量:WeakMap

如何使用 capybara-webkit 获取响应头和时间

$.ajax 删除请求未在 capybara-webkit 中发送数据参数