(九)Locust 參數化
阿新 • • 發佈:2018-05-14
隨機 nbsp pan start color 工具 AI tar IT
使用 LoadRunner 和 JMeter 的同學都知道,性能測試工具設置參數化頗為麻煩,但對於 Python 來說,生成點數據再簡單不過了。
參數化系統登錄
這裏以某系統登錄為例,簡單介紹登錄用戶名密碼的參數化實現
from locust import HttpLocust, TaskSet, task from random import randint # Web性能測試 class UserBehavior(TaskSet): def on_start(self): self.login() # 隨機返回登錄用戶 def login_user(): users= {"user1":123456,"user2":123123,"user3":111222} data = randint(1, 3) username = "user"+str(data) password = users[username] return username, password @task def login(self): username, password = login_user() self.client.post("/login_action", {"username":username, "password":password}) class User(HttpLocust): task_set = UserTask min_wait = 1000 max_wait = 3000 host = "http://www.xxx.com"
創建 login_user() 方法,定義登錄字典 users , 通過randint 隨機獲取字典中的用戶數據。
在 login() 登錄任務中,調用 login_user() 方法實現 隨機用戶的登錄。
關於參數化方式很多,這裏起一個拋磚引玉作用。
關於 Locust 工具就介紹到這裏,能否把 Locust 在工作中用好,取決於你對性能測試業務的理解,其次是靈活的運行 python 語言。
(九)Locust 參數化