私はDjango プロジェクトでstorages.backends.s3boto.S3BotoStorage
for myを使用しています。DEFAULT_FILE_STORAGE
FileSystemStorage
理想的には、単体テスト中にデフォルトを使用するか、テストの終了時に削除される一時的なバケットを作成したいと考えています。
これを達成するための最良の方法は何ですか?
私はDjango プロジェクトでstorages.backends.s3boto.S3BotoStorage
for myを使用しています。DEFAULT_FILE_STORAGE
FileSystemStorage
理想的には、単体テスト中にデフォルトを使用するか、テストの終了時に削除される一時的なバケットを作成したいと考えています。
これを達成するための最良の方法は何ですか?
私は通常、テスト用に別の設定ファイルを保持していますtest.py
。そこでストレージ バックエンドを構成したり、テスト中に変更したいその他の設定を構成したりできます。次に、次のようにテストを実行します。
python manage.py tests --settings=project.test
フラグは、使用する設定モジュールの--settings
ドット パスです (デフォルトは ですproject.settings
)。
テスト設定ファイルの適切な最適化: http://www.daveoncode.com/2013/09/23/effective-tdd-tricks-to-speed-up-django-tests-up-to-10x-faster/
Two Scoops of Djangoは、マルチ設定ファイルのセットアップについて読むのに適した場所です。
まず、上記で指摘したように、テスト用に別のファイルを使用します。
次に、botos3 をモックおよびテストするための moto という python ライブラリがあります。
git リポジトリ:- https://github.com/spulec/moto