選択された答えは大規模なハックです。:)
それほど大規模ではないハックは、独自のTestSuiteRunnerサブクラスを作成して設定を変更するか、アプリケーションの残りの部分で必要なその他のことを行うことです。設定でテストランナーを指定します。
TEST_RUNNER = 'your.project.MyTestSuiteRunner'
一般に、これは実行したくありませんが、どうしても必要な場合は機能します。
from django.conf import settings
from django.test.simple import DjangoTestSuiteRunner
class MyTestSuiteRunner(DjangoTestSuiteRunner):
def __init__(self, *args, **kwargs):
settings.IM_IN_TEST_MODE = True
super(MyTestSuiteRunner, self).__init__(*args, **kwargs)
注:Django 1.8以降、DjangoTestSuiteRunner
非推奨になりました。DiscoverRunner
代わりに使用する必要があります:
from django.conf import settings
from django.test.runner import DiscoverRunner
class MyTestSuiteRunner(DiscoverRunner):
def __init__(self, *args, **kwargs):
settings.IM_IN_TEST_MODE = True
super(MyTestSuiteRunner, self).__init__(*args, **kwargs)