我曾經在我的測試案例嘲諷。我手動測試,找出了答案應該是什麼,並且覆蓋了ruby oAuth寶石。這裏是一個測試案例(使用早該)一個成功的鳴叫:
context 'cork/tweet' do
setup do
response = Net::HTTPResponse.new("1.1", 200, "")
Net::HTTPResponse.any_instance.stubs(:body).returns JSON_RESPONSE
OAuth::AccessToken.any_instance.stubs(:post).returns(response)
post :create, :cork_id => @cork.id, :message=>MESSAGE
end
should_respond_with :redirect
should_change('Tweet.count' , :by => 1) {Tweet.count}
.. and so on
JSON_RESPONSE是我從我的手動測試收集到的答案 - 我把一個printf中的lib/OAuth的/標記/ access_token.rb:44:在`post'來捕獲響應。
否則這幾乎是不可能的測試,B/C正如你指出,微博也沒辦法,先取消從API應用程序,其作用不同,如果您已授權應用程序。
來源
2010-09-07 13:40:03
Rob
呀,祕訣有使用FakeWeb模擬出Twitter的後端。好文章。 – Rob 2011-06-06 11:50:33