2012-10-13 49 views
2

我們做與python世界即coverage.py如何使用coverage.py在Django-Python中實現像Ruby-Rails這樣的覆蓋報告?

現在著名的和唯一可行的解​​決方案覆蓋報告, 我們acheive與coverage.py是什麼: enter image description here

凡爲我們可以用ruby-rails實現的是: enter image description here

所以,我的問題是你如何獲得與coverage.py更詳細的覆蓋報告?

[或在Python Django的世界上任何其他工具]

注:

  • coverage run manage.py test --settings=project.test_settings
  • 生成由coverage html
  • 應/可我通過在額外參數報告生成報告時生成coverage
+0

您是否看到https://github.com/relevance/rcov – apneadiving

+0

您可以在Python世界中推薦類似的東西嗎? –

+0

對不起,我誤讀了。不太瞭解python – apneadiving

回答

2

1)搜索框似乎很有用,沒有人曾經提出過它!

2)有條件的覆蓋:coverage.py有一個支持分支覆蓋的分支開關,這是你在找什麼?

3)命中/行:這是每行執行多少次?我從來沒有見過這樣的聚合。我不明白我將如何在自己的工作中使用該統計量。你能幫我理解爲什麼人們想知道平均點擊數/線數?

+0

所以,(1)你已經同意了。 (2)可能有更多的條件遵循一條路徑。當我們說代碼覆蓋不確保沒有錯誤時,這會產生差異。如果我們對高質量的支點上的所有條件進行測試。 ['http:// en.wikipedia.org/wiki/Code_coverage#Modified_condition.2Fdecision_coverage']然後最後(3)這是更平均的聚合,更高的命中/線,更嚴格的代碼測試。讓圖像在500行代碼中說5個點擊/行。在這裏,我們說每條線平均執行5次,所有測試都通過。 –

+0

現在我們只有'覆蓋百分比' - 我可以用'True'和'False'覆蓋所有的代碼。而如果一個條件受到'n個變量'的影響,那麼代碼必須有n種行爲方式。由於我們已經有100%的覆蓋率,所以這種動機就會消失,這就是coverage.py帶給我們的全部內容。 –

+0

您可以瀏覽'ruby-rails'中使用的工具 - 我已經從中引用了問題中的圖像。 –

相關問題