如何更改django-behave测试运行器的测试文件发现模式?
问题描述:
我有一个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_”开头的文件中的测试?
答
我通过从django-behave切换到behave-django来解决此问题。
behave-django不需要将Django TEST_RUNNER设置为自己的测试运行器,所以python manage.py test -p '*.py'
的作品。
behave-django不提供单个运行单元和验收测试的Django管理命令。我通过编写新的管理命令解决了这个问题。