У меня возникла проблема, и я нашел этот пост в Google. Я предпочитаю использовать команду вместо этого - так что вот код, который может быть полезен для других. Он есть в Django 1.4, но должен работать в любой версии. Я использую WebTest :
В базовом тестовом классе:
def get_test_image_input(self):
return (
'_test-image.jpg',
file(os.path.join(settings.TEST_FILES_PATH, "images", "test.jpg")).read()
)
В любом тесте:
form['image'] = self.get_test_image_input()
Чтобы потом почистить, я просто удаляю все файлы, начиная с _test-image в команде:
from django.core.management.base import BaseCommand
from fabric.operations import local
class Command(BaseCommand):
def handle(self, *args, **options):
# test an app call "tests"
local("python manage_test.py test tests -v 2")
# could use call_command(...) instead
# remove all test images
local("sudo rm -rf `find . -name _test-image*`")