Джанго тесты manage.py - PullRequest
0 голосов
/ 04 мая 2018

Для запуска тестов моего Django я использовал файл manage.py. Но я решил создать свой собственный файл runtests.py.

Как указано в doc Django, файл manage.py будет выполнять все методы, чье имя начинается как "test" и чей класс наследует TestCase!

Моя цель - использовать этот метод поиска для отображения всех возможных тестов (не запускать их). Так вы знаете, где я мог получить этот "метод поиска"?

Спасибо!

1 Ответ

0 голосов
/ 04 мая 2018

То, что вы ищете, называется «обнаружением теста», и вам не нужно делать это вручную.

Если вы хотите написать автономный скрипт, который запускает ваши тесты, вы можете просто вызвать тестер Django вручную из кода Python после настройки. Процесс для этого:

# 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))
...