我想爲我的Node.js API編寫自動化測試,並且我已經開始使用Mocha和Chai,使用chai-http來管理請求。如何正確測試具有身份驗證的RESTful API
我已經有了一個通往www.example.com/users的路線,並且已經成功地編寫了自動化測試來註冊用戶並登錄用戶,所以我以爲我在路上,但現在幾乎所有的其他路由需要用戶進行身份驗證!由於我在測試過程中嘲笑數據庫(使用mongoose使用mockgoose),我已經注意到了這種依賴關係。但是,這帶來了一個問題,我如何獲得一個用戶身份驗證,但仍然不會暴露我的測試多個,可能會改變的代碼段?
程序流程相對簡單:在請求安全資源時,會有中間件對用戶進行身份驗證,然後將一個對象附加到請求上。那麼user
對象就可以讓路由訪問用戶的信息並調用數據庫。
所以,我想一個理想的解決方案將附加一個user
對象的請求對象,一旦調用了API。
由於我相對較新的測試,我會歡迎任何反饋,讓我洞察到更好的測試程序。