Как добавить файл в запрос POST, сделанный в Locust.io?

Я использую Locust.io для тестирования загрузки веб-сайта python/django, который принимает загрузку изображений:

headers = {'content-type': 'multipart/form-data'}
image = open('img.jpg', 'rb')
payload = {'id': self.id}
files = {'photo': image}    
upload_result = self.client.post("/image/", data=payload, files=files, headers=headers)

Когда я использую вышеизложенное, я вижу, что request.FILES в Django - это None. Однако, когда я использую POSTMAN вместо Locust, чтобы сделать то же самое, я получаю объект файлов в request в Django.

сервер.py

photo = request.FILES.get('photo')
id = request.POST.get('id')
form = PhotosModelForm(request.POST, request.FILES)

Как отправить файл в HTTP-запросе клиента Locust вместе с некоторыми данными POST?


person Anuj Acharya    schedule 07.12.2015    source источник
comment
Locust использует requests в качестве транспортной библиотеки. Ответ здесь должен работать (при условии, что ваш сайт Django получает файл как multipart/form-data)   -  person yorodm    schedule 17.01.2019