Advertisement
Guest User

Untitled

a guest
Apr 13th, 2018
114
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
Python 1.46 KB | None | 0 0
  1. from locust import HttpLocust, TaskSet, task
  2. import resource
  3. import random
  4.  
  5. resource.setrlimit(resource.RLIMIT_NOFILE, (999999, 999999))
  6.  
  7. class UserBehavior(TaskSet):
  8.  
  9.     device_id = ""
  10.  
  11.     def on_start(self):
  12.         self.login()
  13.  
  14.     def login(self):
  15.         (username, password, device_id) = self.get_random_user()
  16.         self.device_id = device_id
  17.         response = self.client.get("/login/?next=/")
  18.         csrftoken = response.cookies.get('csrftoken', '')
  19.         # print("##### username: " + username + " password: " + password + " device_id: " + device_id)
  20.         self.client.post("/login/?next=/", {"csrfmiddlewaretoken": csrftoken,
  21.                                             "username": username,
  22.                                             "password": password })
  23.     def get_random_user(self):
  24.         random_number = random.randint(0,9999)
  25.         random_number_str ="%06d" % random_number
  26.         username = "user_" + random_number_str
  27.         password = username[::-1]
  28.         device_id = "1e" + "{0:#0{1}x}".format(random_number,12)[2:]
  29.         return (username, password, device_id)
  30.  
  31.     @task(100)
  32.     def load_page(self):
  33.         self.client.get("/")
  34.  
  35.     @task(80)
  36.     def load_lampi(self):
  37.         self.client.get("/lampi/")
  38.  
  39.     @task(75)
  40.     def load_lampi(self):
  41.         self.client.get("/lampi/device/" + self.device_id)
  42.  
  43. class WebsiteUser(HttpLocust):
  44.     task_set = UserBehavior
  45.     min_wait = 5000
  46.     max_wait = 9000
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement