내 rspec 테스트에 mock_redis gem을 사용하여 redis를 스터핑하려고합니다. GET 및 SET를 내 실제 레디 스 인스턴스에 전송되는 난 아직도보고 있어요, 불행하게도rspec 테스트에서 redis를 스텁 할 수 없습니다.
RSpec.configure do |config|
# ... various rspec config options ...
config.before(:each) do
redis_instance = MockRedis.new
Redis.stub(:new).and_return(redis_instance)
Redis::Store.stub(:new).and_return(redis_instance)
end
end
을, 나는 레디 스를 죽일 경우, 다음 내 테스트를 모두 실패 : 내 RSpec에 설정은 다음과 같습니다. 내가 중단 점을 추가하려고, 그리고이 코드 블록이 제대로 실행되고 볼 수 있습니다. 또한이 before
블록의 범위 내에서 Redis.new == redis_instance
과 Redis::Store.new == redis_instance
이 모두 true라는 것을 확인했습니다.
다른 사람이 나에게 적합하지 않다는 통찰력이 있습니까? 나는 스터 빙/조롱을위한 대체 접근법에 대해서도 개방적이다.