3
我試圖用RSpec,水豚和工廠女孩來測試我的網站的登錄功能。我總是會在終端中發現以下錯誤,但無法找到任何解決方案。當我使用save_and_open_page
時,我收到一個空白頁。我希望有人知道什麼是錯的。謝謝!測試設計 - 水豚:: ElementNotFound:無法找到xpath「/ html」
這裏是test output
Failure/Error: expect(page).to have_text("Login successful.")
Capybara::ElementNotFound:
Unable to find xpath "/html"
# ./spec/features/navigation_spec.rb:49:in `block (2 levels) in <top (required)>'
這是我sometest_spec.rb
文件與相應的線路:
require 'spec_helper'
include Warden::Test::Helpers
describe "User login" do
it "log in normal user" do
Warden.test_mode!
user = create(:normal_user)
user.confirmed_at = Time.now
user.save
login_as(user, scope: :user)
expect(page).to have_text("Login successful.")
logout(:user)
Warden.test_reset!
end
end
這裏是我的factory_girl.rb
文件
RSpec.configure do |config|
config.include FactoryGirl::Syntax::Methods
end
而且factories.rb
文件
FactoryGirl.define do
factory :normal_user, class: User do
firstname "John"
lastname "Doe"
email "[email protected]"
password "thepassword"
admin false
end
end
嘗試使用have_content而不是have_text ....不知道 –
沒有沒有修復它。我也在其他地方成功使用了have_text。似乎login_as方法沒有任何重定向「影響」。 – Linus