我在 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是阅读多设置文件设置的好地方。
首先,如上所述,使用单独的文件进行测试。
其次,有一个名为 moto 的 python 库,用于模拟和测试 botos3。
git 存储库:- https://github.com/spulec/moto