2015-07-20 40 views
1

我對TDD非常新,並且試圖用測試創建我的第一個Djagno應用程序。當談到通用視圖時,我有點困惑。我已經閱讀了幾個地方(包括官方文檔),每個視圖都應該有與之相關的測試。但我也讀過,你應該避免測試Django內部因爲它是不必要的。我應該在Django中測試我的通用DetailView

所以,如果我有這樣一個觀點:

class ClinicView(DetailView): 
    model = Clinic 
    template_name = "directory/clinic.html" 

它採用了通用視圖和工作正常,我應該爲它編寫一個測試?

我的直覺是我不應該因爲我使用通用視圖而沒有真正發現很多信息告訴我我的感覺是否正確。談到這個時,最佳做法是什麼?或者,如果我想讓我的代碼由別人來維護,我會期待什麼?我是否應該至少寫一個測試來確保我的模型和模板存在?提前致謝。

回答

1

你想避免過度測試。您只應編寫自定義邏輯的測試或經常更改的測試。

例如,如果診所模型有一個計算某些結果的複雜方法,那麼您需要測試以確保它按照您的想法執行。

如果您經常更改某些內容,並且其他人可能會進行更改,您需要進行測試以確保在更改後它仍能正常工作。 Django視圖已經過測試。除非你在視圖中添加了一堆定製邏輯(無論如何你應該把它放在ModelManager中),否則用自動化測試重複測試是沒有意義的。

測試很棒,我喜歡它!但我討厭維護它,所以我不打算全面覆蓋。一旦用測試覆蓋了自定義代碼,通過測試每一件小事就可以獲得收益遞減。

我曾經爲一家有點瘋狂的公司工作,想讓我爲自動化測試編寫測試。不要像他們(:

相關問題