LoginSignup
3
2

More than 3 years have passed since last update.

【Django】ファイルの場所を変えたらTestが動かない

Posted at

環境

  • python 3.7.4
  • django 2.2.8
  • centOS 7

症状

python manage.py startapp sampleでアプリを作成し、sample/tests.pyに記述したテストは動く。
ファイル分割のためsample/tests/ディレクトリを作成、sample/tests/test_model.pyを作成したものの、
python manage.py testが動かない。

実行結果

(venv) user@localhost:django-app $ python manage.py test
System check identified no issues (0 silenced).

----------------------------------------------------------------------
Ran 0 tests in 0.000s

OK

確認した

Djangoのテストは、テストランナーにテストを発見してもらうためのルールが存在する。
正しく沿っているか確認した。

  • テストのモジュール名(ファイル名)はtestで始まっているか・・・・・ OK
  • django.test.TestCaseを継承しているか・・・・・・・・・・・・・ OK
    (unittest.case.TestcaseでもOK)
  • テストメソッド名はtestで始まっているか・・・・・・・・・・・・・ OK
  • そもそもsettings.pyINSTALLED_APPSに記述されているか・・・・OK

結論

sample/tests/ディレクトリに__init__.pyが存在しないことが原因だった。
Djangoにモジュールとして認識できるようにしてやる必要があるようだ。
空ファイルでよいので作成すれば動く。

参考

3
2
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
3
2