현재로드 할 특정 라이브러리/모델을 확인하는 rspec 테스트를 실행 중입니다. 특히, 우리는 객체를 생성 할 때 FF와 Chrome을위한 Watir :: Browser, Safari를위한 Watir :: Safari와 같은 정확한 Watir 객체를 얻는다는 것을 테스트하려고합니다.ruby / rspec에서 'require'를 언로드하는 방법은 무엇입니까?
우리는 이미 이것을 시도했습니다 : Unload a ruby class하지만 그냥 상수를 삭제합니다. 이는 우리가 원하는 것이 아닙니다.
일반적으로 이것은 문제가되지 않지만 safariwatir 및 watir-webdriver와의 호환성 문제로 인해 발생하지 않습니다. 그와 오류 아웃 :
superclass mismatch for class UnknownObjectException
그리고이, 우리는 기본적으로 (따라서 원래의 논리 - 우리가 테스트 계획)로드 할 webdriver 선택해야 '수정'하는
해결하는 방법이 있나요을 이? 우리의 테스트는 통과했을 때뿐만 아니라 통과했습니다. 그래서 우리는 기본적으로 요구 문제를 우회하기위한 단계를 생략해야합니다. 루비
덕분에 작동하는 방법에 대한 지금까지 watir-webdriver blog에 대한 세부 사항! 이것은 여전히 우리를 도청하고 있습니다. 우리는 조건부 요구 사항을 처리해야하지만 조건을 테스트하려고합니다. 이 경우, rspec이 테스트 케이스를 통과 할 때 먼저 watir-webdriver가로드되었는지 확인한 다음 safariwatir이 필요한지 테스트 할 때까지 watir-webdriver가로드되어 오류가 발생합니다 – corroded
저는 ' 조금 혼란 스럽습니까, rspec으로 테스트 코드를 테스트하고 있습니까? 이것은 테스트에서 생략해야 할 한 가지 양상 일 수 있습니다. 아마도 어떤 종류의 로깅이나 일부 디버깅을 통해 작동하는지 확인 할 수 있습니다. "Safari를로드하고 있습니다." –