最近要開始嘗試 Test-driven development (TDD) 了,簡單地說就是以測試起家,什麼想做的事,第一件事就是幫它規劃輸入的參數與預期的輸出結果,然後就開始撰寫測試的程式碼,最後才開始填寫核心程式碼。
這樣的好處除了可以替案子留下測試的簡單驗證程式碼外,以避免未來案子過大造成的相互影響,也能更明確寫程式的目標,而唯一的缺點就是耗時間。以下紀錄 Django 在 apps 裡新增 testing 的環境。
- 在 project 中的 apps 裡新增 tests.py 檔案和 fixtures 目錄
- 在 fixtures 目錄裡準備一筆測資
- ex: record_1000.json
- 可從現有 database 匯出
- # python manager dumpdata your_app > record_1000.json
- 撰寫 tests.py 檔案
- import django
import views as testingAPI
class FuncTestCase(django.test.TestCase):
fixtures=['record_1000']
def test_MyFunc(self):
tags='Testing for My Func'
arg = 0
result=testingAPI._MyFunc( arg )
self.assertEqual(result["errorcode"],"0")
return
- import django
- 測試
- # python manage.py test your_app'
參考資料
沒有留言:
張貼留言