2016-03-22 10 views
2

DjangoベースのWebサイトの負荷テストをしようとしています。適切なPOSTファイルアップロード(Locustによる負荷テスト)

私はPOSTが作る2.7.10

ここ

イナゴ0.7.3とPythonを使っ

- フォームを充填し、いくつかのファイル添付:

class WebsiteTasks(TaskSet): 
    def on_start(self): 
     self.client.get("/") 

    @task 
    def submit(self): 
     response = self.client.get("/submit/") 
     csrftoken = response.cookies['csrftoken'] 
     attach = open('file.pdf', 'rb') 

     r = self.client.post("/submit/", { 
      'csrfmiddlewaretoken': csrftoken, 
      'password': smart_str(u'wkefjgui'), 
      'payload': smart_str(u'kjsdgfljdsh'), 
      'docfile': attach, 
      'commit': smart_str(u'Вкрапить/Embed'), 
     }) 

さんは大丈夫に見えたすべてのものが、サーバーのアップロード上をフォルダにファイルがありません!

私は間違っていますか?

答えて

2

まあ、私は解決策を見つけたと私はそれが誰かのために役立つことを願っています:

ここでは、Djangoは、ファイルを処理する方法を説明しました: How to send a "multipart/form-data" with requests in python?

レシピはポスト機能で「ファイル」のparamを定義することです:

r = self.client.post("/submit/", data={ 
     'csrfmiddlewaretoken': csrftoken, 
     'password': smart_str(u'wkefjgui'), 
     'payload': smart_str(u'kjsdgfljdsh'), 
     'commit': smart_str(u'Вкрапить/Embed'), 
     }, files={'docfile': attach}) 
関連する問題