我有一个简单的网络测试场景,Capybara运行着webrick和poltergeist,但是它让我抓狂了:
let(:person) { create(:person) }
scenario 'works with their password', js: true do
# Login with password
visit '/login'
fill I18n.t('labels.email_address'), with: person.email
fill I18n.t('labels.password'), with: person.password
click_button(I18n.t('actions.login'))
page.status_code.should == 200
# Verify we are logged in
within('header') do
expect(page).to have_link "#{person.first_name} #{person.last_name}"
end
end响应似乎很好,但如果我输入了撬-救援,page是空的,这导致它显然找不到标题中的链接:
[9] pry(#<RSpec::ExampleGroups::UserLogin>)> page.all
Nokogiri::CSS::SyntaxError: unexpected '$' after ''
from /usr/local/lib/app-bundle/gems/nokogiri-1.12.5-x86_64-linux/lib/nokogiri/css/parser_extras.rb:90 `on_error'
[10] pry(#<RSpec::ExampleGroups::UserLogin>)> page.first
Nokogiri::CSS::SyntaxError: unexpected '$' after ''
from /usr/local/lib/app-bundle/gems/nokogiri-1.12.5-x86_64-linux/lib/nokogiri/css/parser_extras.rb:90 `on_error'
[17] pry(#<RSpec::ExampleGroups::UserLogin>)> page.html
=> ""我不知道Nokogiri在这里做什么,看起来像是在解析jquery之类的东西吗?
发布于 2022-11-16 09:06:54
这里的问题与代码完全无关:函数first和all需要一个参数,错误消息很不清楚这就是问题所在。
为什么page.html是空的,对我来说仍然是个谜。
https://stackoverflow.com/questions/74457363
复制相似问题