在Node.js中,我寫了一個twitter客戶端。我如何編寫涉及發佈帖子和內容的單元測試?你如何編寫涉及數據庫的單元測試?
回答
總之,存根(stub)。在單元測試時,爲您的Twitter API調用編寫存根函數,每次只返回相同的數據和響應。畢竟,你並沒有測試Twitter的API。
根據數據庫代碼的作用,內存中的SQLite數據庫對於單元測試也非常有用。 – aggsol
當您首先編寫測試(TDD)時,更自然地執行稱爲dependency injection的操作。
在我來描述的 三個簡單的規則條款 測試驅動開發多年:做TDD當Bob大叔實踐three rules。他們是:你是 不允許寫任何生產 代碼,除非它是一個失敗的 單元測試通過。你不允許 再寫一個比 足夠的單元測試失敗;並編譯 失敗是失敗的。您不是 允許編寫更多生產 代碼,而不足以通過 一個失敗的單元測試。
您必須先編寫一個單元測試 ,以獲得您打算編寫的功能 。但通過規則2,你不能寫出非常多的單元測試。由於 因爲單元測試代碼不能編譯 或斷言失敗,您必須停止並編寫生產代碼。 但是,通過規則3,您只能編寫 生產代碼,以使測試 編譯或通過,而不再進行更多操作。
如果你認爲這個,你會 認識到你根本不能寫 非常多的代碼,沒有 編譯和執行的東西。事實上,這確實是重點。在 我們所做的一切,無論是編寫 測試,編寫生產代碼,還是 重構,我們始終保持系統 執行。運行測試之間的時間爲 的訂單爲 秒或分鐘。即使10分鐘太長也不行。
你也可以不與磕碰,我認爲一些流行的磕碰的框架:
- 1. 單元測試涉及數據庫
- 2. 測試涉及數據庫
- 3. 單元測試涉及DOM的Javascript
- 4. 如何對涉及IO的c函數進行單元測試?
- 5. 如何編寫數據庫單元測試?
- 6. 涉及Mknetworkkit的iOS寫入單元測試
- 7. 你如何編寫你的QTP測試?
- 8. 如何在c#中創建涉及集合的單元測試?
- 9. 如何進行涉及CLBeacons的單元測試邏輯?
- 10. 你如何(單元)測試數據庫模式?
- 11. 如何編寫getPopularItems()的單元測試?
- 12. 涉及隨機數的單元測試算法
- 13. 如何單元測試數據庫類
- 14. 如何爲更改數據的方法編寫單元測試?
- 15. 單元測試數據庫
- 16. 「單元」測試數據庫
- 17. 單元測試數據庫
- 18. 如何編寫單元測試
- 19. 如何編寫單元測試?
- 20. 如何編寫加密單元測試?
- 21. vue karma,如何編寫單元測試
- 22. 如何編寫「髒」單元測試?
- 23. 如何測試涉及SynchronizationContext的代碼?
- 24. 如何爲一系列數據轉換編寫單元測試?
- 25. 如何爲primeng數據表編寫jasmine單元測試?
- 26. 你如何運行你的單元測試?編譯器標誌?靜態庫?
- 27. 如何爲新的第三方Django庫編寫單元測試
- 28. 我如何編寫測試併發性的Tornado單元測試
- 29. 如何寫測試單元
- 30. 單元測試 - 數據庫數據
該鏈接現在已經過時。 – adam8810