我一直在嘗試開始單元測試,同時在一個小小的cli程序上工作。我應該如何重寫我的數據庫執行/提交以使其適合單元測試?
我的程序基本解析命令行參數和選項,並決定調用哪個函數。每個函數都在數據庫上執行一些操作。
所以,舉例來說,我可能有一個創建功能:
def create(self, opts, args):
#I've left out the error handling.
strtime = datetime.datetime.now().strftime("%D %H:%M")
vals = (strtime, opts.message, opts.keywords, False)
self.execute("insert into mytable values (?, ?, ?, ?)", vals)
self.commit()
如果我的測試情況下調用這個函數,然後執行選擇SQL檢查該行已輸入?這聽起來很合理,但也使測試更難以維護。你會重寫函數來返回一些東西並檢查返回值嗎?
感謝
我認爲單元測試是兩個單詞。書中使用了 – 2010-04-20 02:33:02