我正在尝试使用 Capybara 编写 Rspec 请求规范。似乎一切正常,除了Capybara 将页面视为空白。
好兆头:
- 页面在浏览器中加载正常
- 拖尾日志显示在测试运行期间呈现了正确的视图
- 我在视图中放置的任何日志记录语句都会被执行
- 如果我使用
assert_select "h1", :text => "hello world"
,则测试通过。
不良迹象:
- 如果我使用
page.should have_content('hello world')
,它会失败,说Capybara::ElementNotFound: Unable to find xpath "/html"
- 如果我这样做
$stdout.puts page.html
,它是空的,除了一个文档类型
我的测试看起来像这样:
describe "working with foos" do
it "should have a 'new foo' form" do
get '/foos/new'
assert_select 'h1', text: 'hello world' # passes
page.should have_content('hello world') # fails
$stdout.puts page.html # empty except for a doctype
end
end
这里有什么问题?