2011-03-29 3 views
0

내 프로젝트에 구현 된 페이스 북 Omniauth 인증 시스템이 있습니다. 브라우저에서 나에게 잘 작동하며 오늘까지 Capybara를 사용하여 작성하고 통과 한 통합 테스트 세트가있었습니다.omniauth를 테스트 할 때 "찾을 수 없음"Capybara와 Facebook 인증

오늘은 테스트 스위트를 실행했지만 모든 관련 테스트가 실패합니다.

module IntegrationSpecHelper 
    def login_with_oauth service 
    visit "/auth/#{service}" 
    save_and_open_page 
    end 
end 

이 그것을했다하더라도, 더 이상 작동하지 않습니다

문제는 인증 (그렇지 않으면 나) 페이스 북을 시뮬레이션하기 위해 거의 모든 테스트에 사용이 도우미 모듈에서 유래 2 일 전, 아직 내 개발 서버에서 작동합니다. "save_and_open_page"는 문자 그대로 "찾을 수 없음"이라는 줄만 포함하고있는 페이지는 표시하지 않습니다.

누구나 원인을 알 수 있습니까?

답변

2

결국 내 자신을 알아 냈습니다.

기본적으로 내 옴니버스 구성 초기화 프로그램에서 환경을 기반으로 인증 공급자를 설정하고있었습니다. 나는이 설치를 가지고있다 :

if Rails.env.production? 
    provider :facebook, ... 
    provider :twitter, ... 
    elsif Rails.env.development? 
    provider :facebook, ... 
    provider :twitter, ... 
    end 

나는 알 수 있듯이 테스트 환경에 대한 설정을 제공하는 것을 잊어 버렸기 때문에 모든 테스트가 실패했다.

0

레일 3에서 config/environments 폴더의 각 환경 파일 즉, development.rb, test.rb 및 production.rb에 각각 omniauth config 초기화 프로그램을 넣을 수 있습니다.

관련 문제