2013-05-03 33 views
6

所有測試的名單有一個簡單的辦法讓一個Django項目的所有測試的列表,而無需運行測試本身?我希望有像./manage.py test --list顯示在Django項目

+2

除了'的grep -R 「^ \ W *高清測試_ * \。\(* \):$」 --include「*的.py 「'? – Thomas 2013-05-03 06:57:34

+0

運行上OS X 10.8.3返回'grep的:警告:遞歸搜索stdin'和過程無限期地掛起而不返回任何結果。將命令修改爲'grep -R「def test_」--include「* .py」.'爲我工作。感謝您的聰明解決方案。 – 2013-05-03 07:25:29

回答

12

在我看來,更正確的方法是用實際的工具運行測試。例如。在nose情況:

./manage.py test <app> --verbosity 2 --collect-only 

僅供參考,py.test也有--collectonly選擇要打印的,而不是執行測試。

另見:

+1

您確定這可行嗎?理論上聽起來不錯,但運行你的命令會返回'./manage.py:error:no such option:--collect-only'。我正在使用Django 1.4.4,並且通過django-nose使用Nose作爲測試運行器。 – 2013-05-21 00:58:50

+0

是的,我已經使用了很久以前。你有沒有加入'django_nose'到INSTALLED_APPS並設置'TEST_RUNNER =「django_nose.NoseTestSuiteRunner''? – alecxe 2013-05-21 04:55:26

+0

我已經做了這兩點,是... – 2013-05-21 05:31:45