2016-12-14 56 views
0

我有一個Django項目,具有行爲特徵和單元測試測試。該單元測試的測試被組織像這樣:如何更改django-behave測試運行器的測試文件發現模式?

theproject/ 
    theapp/ 
     tests/ 
      tests_one.py 
      tests_other.py 
      ... 

它刺激有前綴的測試文件,這些文件已經明確由tests目錄中被確定爲這樣的,以「tests_」。

如果我重新命名所有的測試文件,而無需「tests_」,改變我的測試運行,以

TEST_RUNNER = 'django.test.runner.DiscoverRunner' 

settings.py中做

python manage.py test -p '*.py' 

我所有的單元測試的測試運行,但不我的行爲特徵。

當我有

TEST_RUNNER = 'django_behave.runner.DjangoBehaveTestSuiteRunner' 
settings.py中

python manage.py test 

我的功能運行,但不是我的單元測試的測試。

django-behave runner沒有-p標誌或我可以看到的等效標誌。

我該如何讓django-behave runner發現名稱不以「tests_」開頭的文件中的測試?

回答

0

我通過從django-behave切換到behave-django來解決此問題。

behave-django不需要將Django TEST_RUNNER設置爲自己的測試運行器,所以python manage.py test -p '*.py'的作品。

behave-django不提供單個運行單元和驗收測試的Django管理命令。我通過編寫新的管理命令解決了這個問題。

相關問題