2014-10-27 79 views
1

這是一個最佳實踐問題。最佳實踐 - 單元測試依賴關係

我正在維護一個Web應用程序,該應用程序是另一個Web應用程序的代理,該應用程序的源代碼無法訪問。我的項目的功能是使其他服務器的API易於使用和移動友好。

我正在添加單元測試,我發現自己想要打破標準的最佳實踐,如Tests should be independent。我需要register。如果register失敗,login將失敗(或毫無意義)。處理此問題的最佳方法是什麼?使用setUp函數進行註冊,然後由於預期的用戶缺失而失敗login?或者執行嚴格的測試順序並確保register被首先調用?

我傾向於傾向於使用setUp函數,但我很想知道社區的想法。

測試框架是JUnit,但我想這個問題會適用於其他框架。

回答

1

您正在描述集成測試,而不是單元測試。單元測試模擬依賴關係並且練習一個類。沒有必要先註冊,因爲你嘲笑成功註冊的結果(如有必要,取決於你的課程設計)。

對於集成測試,是的,你會有一個複雜的設置。如果每次運行速度太慢,您可能會發現創建單個測試可以更容易,該測試將執行大量依賴於以前測試的測試。