Tôi đã sử dụng capybara một thời gian, nhưng tôi mới làm phép thuật. Tôi có một vấn đề rất kỳ lạ, theo đó nếu tôi chạy các thông số kỹ thuật mà không có Capybara's: js => true chức năng tôi có thể đăng nhập tốt, nhưng nếu tôi cố gắng chỉ định: js => true trên spec, tên người dùng/mật khẩu không thể được tìm thấy.Sorcery/Capybara: Không thể đăng nhập bằng: js => true
Đây là vĩ mô xác thực:
module AuthenticationMacros
def sign_in
user = FactoryGirl.create(:user)
user.activate!
visit new_sessions_path
fill_in 'Email Address', :with => user.email
fill_in 'Password', :with => 'foobar'
click_button 'Sign In'
user
end
end
nào được gọi là trong thông số kỹ thuật như thế này:
feature "project setup" do
include AuthenticationMacros
background do
sign_in
end
scenario "creating a project" do
"my spec here"
end
Đoạn mã trên hoạt động tốt. Tuy nhiên, nếu tôi thay đổi spec kịch bản từ (trong trường hợp này)
scenario "adding questions to a project" do
để
scenario "adding questions to a project", :js => true do
đăng nhập không thành công với một 'username mật khẩu không chính xác /' kết hợp. Theo nghĩa đen, thay đổi duy nhất là: js => true. Tôi đang sử dụng trình điều khiển javascript capybara mặc định. (Tải lên Firefox)
Bất kỳ ý tưởng nào có thể xảy ra ở đây? Tôi hoàn toàn bối rối. Tôi đang sử dụng Capybara 2.0.1, Sorcery 0.7.13. Không có javascript trên trang đăng nhập và save_and_open_page trước khi nhấp vào 'đăng nhập' xác nhận rằng các chi tiết chính xác được nhập vào trường tên người dùng/mật khẩu. Bất kỳ đề xuất thực sự đánh giá cao - Tôi đang thua lỗ.
Ach! Tất nhiên! Cảm ơn nhiều, nhiều đánh giá cao. – PlankTon