Django 1.3 でテスト スイートを作成できません。
というディレクトリにアプリがインストールされているとしapp_name
ます。そのディレクトリ内のファイルの 1 つは、foo.py
という名前のクラスを定義するものFoo
です。それをテストしたいので、foo_test.py
という名前のクラスを定義するディレクトリが呼び出すファイルもありますFooTest
。そのファイルは次のようになります。
import unittest
import foo
class FooTest(unittest.TestCase):
def setUp(self):
self.foo_instance = foo.Foo()
... etc
ここで、別のファイルに別のテスト ケースを作成し、それらすべてをテスト スイートの一部として実行したいと考えています。同じディレクトリに、スイートを定義するapp_name
ファイルを作成しました。tests.py
最初は次のように定義しました。
import foo_test
from django.test.simple import DjangoTestSuiteRunner
def suite():
runner = DjangoTestSuiteRunner()
return runner.build_suite(['app_name'])
残念ながら、呼び出しはファイルをrunner.build_suite(['app_name'])
検索app_name
し、 を実行するため、これは失敗します。Python インタープリターが最大再帰深度を超えてすべてを停止するまで、これが再帰的に続行されます。tests.py
suite()
runner.build_suite(['app_name'])
に変更
runner.build_suite(['app_name.foo_test'])
また
runner.build_suite(['app_name.foo_test.FooTest'])
のようなエラーにつながりValueError: Test label 'app_name.foo_test' does not refer to a test
ます。
そしてそれを次のように変更します:
runner.build_suite(['foo_test'])
また
runner.build_suite(['foo_test.FooTest'])
のようなエラーにつながりApp with label foo_test could not be found
ます。
この時点で、私はちょっとアイデアがありません。どんな助けでも大歓迎です。ありがとう!