如何更改 django-behave 测试运行程序的测试文件发现模式?
How can I change the django-behave test runner's test file discovery pattern?
我有一个具有行为特性和单元测试的 Django 项目。 unittest 测试的组织方式如下:
theproject/
theapp/
tests/
tests_one.py
tests_other.py
...
不得不在 tests
目录中已经明确标识的测试文件加上 "tests_".
前缀是令人恼火的
如果我重命名所有没有 "tests_" 的测试文件并将我的测试 运行ner 更改为
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 运行ner 没有 -p
标志或我能看到的等效标志。
如何让 django-behave 运行ner 发现名称不以 "tests_" 开头的文件中的测试?
我通过从 django-behave 切换到 behave-django 解决了这个问题。
behave-django 不需要将 Django TEST_RUNNER 设置为其自己的测试运行器,因此 python manage.py test -p '*.py'
可以工作。
behave-django 不提供同时运行单元测试和验收测试的单个 Django 管理命令。我通过编写新的管理命令解决了这个问题。
我有一个具有行为特性和单元测试的 Django 项目。 unittest 测试的组织方式如下:
theproject/
theapp/
tests/
tests_one.py
tests_other.py
...
不得不在 tests
目录中已经明确标识的测试文件加上 "tests_".
如果我重命名所有没有 "tests_" 的测试文件并将我的测试 运行ner 更改为
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 运行ner 没有 -p
标志或我能看到的等效标志。
如何让 django-behave 运行ner 发现名称不以 "tests_" 开头的文件中的测试?
我通过从 django-behave 切换到 behave-django 解决了这个问题。
behave-django 不需要将 Django TEST_RUNNER 设置为其自己的测试运行器,因此 python manage.py test -p '*.py'
可以工作。
behave-django 不提供同时运行单元测试和验收测试的单个 Django 管理命令。我通过编写新的管理命令解决了这个问题。