locust

系统教程:https://www.cnblogs.com/fnng/p/6081798.html

1、locust在python3安装比较方便,安装完pip后,用pip install locust

2、locust -V查看是否安装成功

3、编写性能测试脚本,简单脚本如下

from locust import HttpLocust, TaskSet, task


class Locust_Test(TaskSet):

    @task
    def test(self):
        self.client.get("/search/error.html")


class Locust_Test(HttpLocust):
    task_set = Locust_Test
    host = "https://www.baidu.com"
    min_wait = 1000
    max_wait = 2000

创建UserBehavior()类继承TaskSet类,为用户行为。

  创建baidu() 方法表示一个行为,访问百度首页。用@task() 装饰该方法为一个任务。1表示一个Locust实例被挑选执行的权重,数值越大,执行频率越高。在当前UserBehavior()行为下只有一个baidu()任务,所以,这里的权重设置为几,并无影响。

  WebsiteUser()类用于设置性能测试。

  task_set :指向一个定义了的用户行为类。

  min_wait :用户执行任务之间等待时间的下界,单位:毫秒。

  max_wait :用户执行任务之间等待时间的上界,单位:毫秒

4、在脚本所在目录,启动服务,执行命令:locust -f 脚本名称

5、http://localhost:8089/打开性能监控界面

 

Number of users to simulate 设置模拟用户数

Hatch rate (users spawned/second)  孵化率?不知道怎么翻译,每秒产生(启动)的用户数。

点击Start swarming 开始运行性能测试

6、locust两个类:

(1)HttpLocust :每一个模拟的用户可以看做一个 HttpLocust 类的实例

(2)TaskSet:TaskSet类定义了每个用户的任务集合,测试任务开始后,每个 Locust 用户会从 TaskSet 中随机挑选一个任务执行,然后随机等待 HttpLocust 类中定义的 min_wait和 max_wait 之间的一段时间,执行下一个任务。

posted on 2020-05-14 15:55  ChanXM  阅读(207)  评论(0)    收藏  举报

导航