测试脚本
- #locust_test.py
- from locust import HttpLocust, TaskSet, task
- class WebsiteTasks(TaskSet):
- def on_start(self):
- self.client.post('/login', {
- 'username': 'test',
- 'password': '123456'
- })
- @task(2)
- def index(self):
- self.client.get('/')
- @task(1)
- def about(self):
- self.client.get('/about/')
- class WebsiteUser(HttpLocust):
- task_set = WebsiteTasks
- host = 'http://debugtalk.com'
- min_wait = 1000
- max_wait = 5000
复制代码说明: - WebsiteUser定义数据集,所有的client共用该组数据
- WebsiteTasks定义了任务集,以及任务执行的比例
- 数据集中的host表示测试的网站
执行:
访问:http://127.0.0.1:8089注意windows访问该路径,无法打开下面的路径,必须访问:http://localhost:8089/ 如图,设置:
Number of users to simulate:模拟的用户的数量
Hatch Rate:用户增加的数量(如果用户总数为100,每秒增加5,则需要20s增加到100个用户)
报告说明:
- requests(Number of successful requests):成功的请求数
- fail(Number of fail requests):失败的请求数
- Median(Median response time):响应时间的中位数,不同于平均响应时间,中位数反映的是响应时间的“大体水平”,用来弥补平均数在偏态分布中不足之处的。例如响应时间为:
- 192,185,134,156,2000。则平均响应时间为:1067ms,中位数为:185ms。显然中位数时间更能反映响应时间的平均水平。
- Average(Median response time):平均响应时间
- Min(Min response time):最短响应时间
- Max(Max response time):最慢响应时间
- Content Size(Average response size):平均响应大小
- reqs/sec(Current number of requests per second):当前每秒请求数量
|