2011-07-13 98 views
3

我正在研究一個由兩個Python包組成的項目。 foo包含一些常見的業務邏輯,foo.webapp包含一個Django應用程序,它提供了一個API。模塊foo.tests包含針對公共邏輯的unittest個案,以及針對API的foo.webapp.tests。另外還有一個用於運行API的Django項目。所以它看起來像這樣:如何與其他測試一起運行Django應用程序測試?

foo-root/ 
    foo/ 
     __init__.py 
     some_logic.py 
     other_logic.py 
     tests.py 
     webapp/ 
      __init__.py 
      urls.py 
      views.py 
      tests.py 

    django_project/ 
     manage.py 
     settings.py 
     urls.py 

我想保持foo.tests分開foo.webapp.tests,所以當我做django_project/manage.py test,它應該只運行了後者。但我也想要一種方法來同時運行兩個測試套件,一個進度條,一個失敗計數等。我可以做到這一點,如果是的話,如何?

回答

1

我沿着django-alltestsrunner的行編寫了一個自定義的Django測試運行器(但不是自動發現測試,我在settings中指定了一個模塊列表)。

現在,當我做django_project/manage.py test時,它會運行所有的測試。當我做django_project/manage.py test foo.webapp.tests時,它只運行API測試。

+2

github的鏈接已死亡。 –

相關問題