機能テストと単体テストを分離するために、Django アプリのディレクトリ構造をセットアップしています。Django プロジェクトのテスト ランナーとして、nose を使用しています。
Django プロジェクトのルートには、次の構造を持つ「tests」というフォルダーがあります。
tests
├── __init__.py
├── functional
│ ├── __init__.py
└── unit
├── __init__.py
├── data.py
├── tests.py
単体テストだけを実行したい場合、プロジェクト ルートから以下を使用できないはずです。
$ nosetests tests.unit
----------------------------------------------------------------------
Ran 0 tests in 0.000s
OK
ご覧のとおり、tests.py ファイルでテストが見つかりません。
ただし、ディレクトリ構造を使用して実行すると、テストは次のように検出されます。
$ nosetests tests/unit/
E
# .. Some errors I expected because settings are not initialized when called this way
-----------------
Ran 1 test in 0.001s
FAILED (errors=1)
私は何が欠けていますか?私の主な問題は、今後のテストのためにテスト DB にデータを作成するために呼び出されるsetup
関数があることです。tests.unit.__init__.py
ありがとう