🤔

Django REST FrameWorkのtest(unittest)をvscodeから実行する

に公開

概要

Django REST FrameWorkを用いていて、VscodeのTesting機能(Python testing in vscode)を用いてテストの実行とデバッグをしようと設定していたときに、結構苦戦したのでその備忘録

設定ファイル

悪戦苦闘した結果、以下のような設定ファイルでできた。

setting.json
{
    "python.defaultInterpreterPath": "<path_to_your_interprter>",
    "python.testing.unittestEnabled": true,
    "python.testing.unittestArgs": [
       "--keepdb" // python mange.py test に続く引数はこちらに記述する.
   ],
    "python.testing.cwd": "<テストが実行されるディレクトリ>",
    "python.testing.autoTestDiscoverOnSaveEnabled": true,
    "python.testing.pytestEnabled": false,
    "python.envFile": "<path_to_your_env>",
    "editor.formatOnSave": true
}

環境変数に以下の2つを設定し、setting.jsonの<path_to_your_env>に環境変数ファイルのパスを記述する。

.env
DJANGO_SETTINGS_MODULE=config.settings.development
MANAGE_PY_PATH="./manage.py

まとめ

  • ドキュメントはちゃんと読みましょう
  • 自動テストがボタン一つで実行できると便利

Discussion