Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- from locust import HttpLocust, TaskSet, task
- import resource
- import random
- resource.setrlimit(resource.RLIMIT_NOFILE, (999999, 999999))
- class UserBehavior(TaskSet):
- device_id = ""
- def on_start(self):
- self.login()
- def login(self):
- (username, password, device_id) = self.get_random_user()
- self.device_id = device_id
- response = self.client.get("/login/?next=/")
- csrftoken = response.cookies.get('csrftoken', '')
- # print("##### username: " + username + " password: " + password + " device_id: " + device_id)
- self.client.post("/login/?next=/", {"csrfmiddlewaretoken": csrftoken,
- "username": username,
- "password": password })
- def get_random_user(self):
- random_number = random.randint(0,9999)
- random_number_str ="%06d" % random_number
- username = "user_" + random_number_str
- password = username[::-1]
- device_id = "1e" + "{0:#0{1}x}".format(random_number,12)[2:]
- return (username, password, device_id)
- @task(100)
- def load_page(self):
- self.client.get("/")
- @task(80)
- def load_lampi(self):
- self.client.get("/lampi/")
- @task(75)
- def load_lampi(self):
- self.client.get("/lampi/device/" + self.device_id)
- class WebsiteUser(HttpLocust):
- task_set = UserBehavior
- min_wait = 5000
- max_wait = 9000
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement