2010-08-13 73 views
1

我有一個允許通過OAuth進行身份驗證(我使用Restful身份驗證和Rails OAuth Plugin)的rails站點。爲了確保它的工作,我做了一個快速站點,充當OAuth消費者。使用Cucumber在Rails中測試我的OAuth提供程序

但是,我希望測試在黃瓜功能中是獨立的。理想情況下,這將使用Webrat,以便Cucumber可以正確管理自己的數據庫重置,以便我不需要運行服務器的實例來使Cucumber測試正常工作。但是,由於OAuth插件(以及底層的gem)發出HTTP請求,我想不出一個簡單的方法來通過Webrat,而無需自行生成所有請求(將OAuth gem中的代碼寫入我的黃瓜測試)。

任何想法?

感謝

回答

2

雖然文章是不是瞭解OAuth插件(這是關於TwitterAuth插件,這僅僅是OAuth的,但具體涉及到Twitter),http://blog.zerosum.org/2009/7/13/twitter-auth-integration-testing有你需要做的一個很好的概述。

基本上,你使用一個名爲FakeWeb的寶石阻止任何外部訪問,並愚弄黃瓜認爲它正在與外部服務交談。

+0

謝謝 - 假冒消費者可能比提供商有點難,但看起來這是我所需要的。 – 2010-08-20 06:56:56