2017-11-15 17 views
0

Locustを使用してlaravelアプリケーションにログインしようとしています。 私のコードは以下の通りです:私は誤りだがLaravelアプリケーションのLocastログインテスト

from locust import HttpLocust, TaskSet, task 

class UserBehavior(TaskSet): 
    def on_start(self): 
    self.login() 

    def login(self): 
    response = self.client.get("/en/login") 
    csrftoken = response.cookies['XSRF-TOKEN'] 
    session = response.cookies['bitrent_session'] 
    post_data = {'username': "[email protected]", 'password': '1234', "_token":  csrftoken } 
    with self.client.post('/en/login', post_data, 
        catch_response=True) as response: 
     print("Code: ", response.status_code) 
     print("Content: ", response.content 

    @task() 
    def index(self): 
    self.client.get("/") 

class WebsiteUser(HttpLocust): 
    task_set = UserBehavior 
    min_wait = 5000 
    max_wait = 9000 

- コード419のコンテンツをページには、不活動による有効期限が切れています。 は、誰もがイナゴ

答えて

2

を使用してLaravelアプリケーションにログインする方法を私に助言でした答えが見つかりました:

理由は、私が_tokenフィールドに間違った値を渡しているということです。あなたが同じタスクに直面した場合に代わりに、あなたは次のことを試みることができる :

import re 
from locust import HttpLocust, TaskSet, task 

class UserBehavior(TaskSet): 
    def on_start(self): 
    self.login() 

    def login(self): 
    response = self.client.get("/en/login") 
    print("Content: ", response.content) 
    csrftoken = re.search('meta name="csrf-token" content="(.+?)"', response.text).group(1) 

    print("token: ", csrftoken) 
    post_data = {'username': "[email protected]", 'password': '1234', "_token": csrftoken } 
    with self.client.post('/en/login', post_data, 
       catch_response=True) as response: 
     print("Code: ", response.status_code) 
     print("Content: ", response.content) 


    @task() 
    def index(self): 
    self.client.get("/") 

class WebsiteUser(HttpLocust): 
    task_set = UserBehavior 
    min_wait = 5000 
    max_wait = 9000 

希望

:)将来的に誰かを助けます
関連する問題