rspec + capybara:expect(页面)和page.within()无法看到加载的页面?

时间:2016-12-14 08:08:05

标签: ruby-on-rails ruby rspec capybara

我在功能规范中使用了rspec 3.4.3和capybara 2.7。

当我运行此测试时:

 visit course_path( @course )
 expect(page).to have_content('short_title')
它变红了:

 Failure/Error: expect(page).to have_content('short_title')
 Capybara::ElementNotFound:
   Unable to find xpath "/html"

当我将测试更改为

 visit course_path( @course )
 within('body') do
   expect(page).to have_content('short_title')
 end

测试变为绿色,但正如托马斯在下面所说,这只是因为within没有做任何工作。

当我使用

 visit course_path( @course )
 page.within('body') do
   expect(page).to have_content('short_title')
 end 

再次变为红色

 Capybara::ElementNotFound:
   Unable to find css "body"

如果我在访问后输出page.html,我可以看到 该页面在那里,有有效的HTML,当然 包含正文和文本。一切都是可见的,没有 fancyfull javascript或css。

这里发生了什么?

0 个答案:

没有答案