2011-03-07 51 views
2

我正在爲用戶註冊頁面構建測試。我正要將Recaptcha添加到該頁面,並且我不知道如何在rspec中對其進行說明。具體而言,我希望通過我的集成測試來驗證用戶是否可以填寫頁面,單擊按鈕並註冊。但在頁面上有Recaptcha,我如何讓Rspec模擬輸入有效的Recaptcha字符串?rspec和recaptcha

回答

1

使用模擬對象:http://www.relishapp.com/rspec/rspec-mocks/docs

沒有意義,試圖測試驗證碼,所以模擬。

+0

謝謝丹,我是rspec的新手,這並沒有發生在我身上。 – Kevin 2011-03-07 04:02:54

+0

不用擔心,我們都是新的一次! – 2011-03-07 04:06:12

+0

你能爲此添加一個例子嗎? – 2013-02-24 02:44:01

9

這個工作對我來說:

context 'User login with captcha' do 
    it 'should login with correct recaptcha' do 
    LoginController.any_instance.expects(:verify_recaptcha).returns(true) 
    user = with_user # get your user... 
    post :login, { :username => user.username, :password => user.password } 
    session[:user].should eql(user.id) 
    response.should redirect_to(root_path) 
    end 
end 
4

的Recaptcha默認情況下不會驗證測試環境驗證碼。

+0

您可以在測試環境中通過'Recaptcha.configuration.skip_verify_env.delete(「test」)啓用它' – luke 2016-09-28 15:49:52