要运行我的Django测试,我使用的是manage.py文件。 但我决定创建自己的文件runtests.py。
正如Django的doc中所指定的那样,manage.py文件将执行名称以“test”开头并且其类继承TestCase的所有方法!
我的目标是使用此搜索方法显示所有可能的测试(不运行它们)。 所以你知道我在哪里可以得到这种“搜索方法”吗?
谢谢!
答案 0 :(得分:0)
您正在寻找的内容称为"测试发现",您不需要手动执行此操作。
如果要编写运行测试的独立脚本,可以在配置后从Python代码手动调用Django的测试运行器。这个过程是:
# First you need settings.
# You can do this by setting DJANGO_SETTINGS_MODULE:
import os
os.environ.setdefault('DJANGO_SETTINGS_MODULE', 'path.to.your.settings')
# Or you can do it manually:
SETTINGS_DICT = {
# Put all the settings you'll need in here...
}
from django.conf import settings
settings.configure(**SETTINGS_DICT)
import django
django.setup()
import sys
# Now you can run tests:
from django.test.utils import get_runner
TestRunner = get_runner(settings)
test_runner = TestRunner(verbosity=2, interactive=True)
failures = test_runner.run_tests(
['test_module_to_look_in']
)
sys.exit(bool(failures))