2011-11-13 33 views
2

哪些工具或技術可以幫助避免錯誤,特別是愚蠢的錯誤,例如拼寫錯誤,Python和Django中的編碼?幫助避免在python/django中出錯的工具或技術

我知道單元測試的每一行代碼都是「正確」的方式,但是有沒有快捷方式?

我知道pylint,但不幸的是,它不檢查Django ORM命名參數,其中可能會忽略拼寫錯誤。有沒有任何工具可以處理這類錯誤?

一位同事想到收集有關令牌的智能統計信息(例如關於函數的命名參數...),並且當遇到一次一個的代碼基礎令牌時,它會被警告爲可能的錯字。 你知道任何類似的工具嗎?

+0

跳過正確單元測試的快捷方式......嘆氣。這是時代的標誌。 – joaquin

回答

2

對不起,我不知道我的理解是否正確,

但我認爲一個好的IDE具有自動代碼驗證,其中有些還與Django的工作。例如,Eclipse called PYDEV有一個很好的python插件。還有一個很好的基於Eclipse/Pydev的IDE,名爲Aptana Studio,您可以嘗試(它對編輯HTML/JS/CSS也有很好的支持)。

This Question也是所有Python IDE的非常好的比較。

+3

或者,如果您正確設置了Pycharm,它具有相當不錯的Django支持。 –

+0

我同意PyCharm--這不是FOSS,但它確實很好。我發現它比pydev好得多。 –

+1

看看這篇文章也有一些很好的建議:http://stackoverflow.com/questions/35470/are-there-any-static-analysis-tools-for-python –

2

pyflakes是一個靜態分析器,它會找到未聲明的變量(如拼寫錯誤)等。許多編輯都有插件,可以在運行或保存時運行pyflakes。這不能替代單元測試,但它可以節省一些不必要的保存 - 重新加載 - 運行週期

0

感謝您的回答,我會檢查這些工具。

我想與你其他的想法(無python/Django的專用)分享到:

  1. 代碼斷言條件 - 但是從生產代碼中刪除。

  2. 對數據運行定期檢查(例如,當發現意外狀態時向開發者發送電子郵件) - 在發現錯誤時可能會更快地檢測到錯誤,但在更多數據被破壞之前(但是,腐敗)。

  3. 進行單一底線測試(可能模擬用戶輸入),涵蓋大部分程序。它可能會捕獲異常和斷言,並且可能比許多測試更容易維護。

相關問題