locust 的 ‘1’ 版本时代变化

斗转星移,时间已经进入2020年,在2020年5月26日,locust也进入了 ’1‘版本时代。

 

有用过locust的,应该都知道,以前locust的版本号都是0开头,那现在这个1.0.*版本与以前的版本有些什么区别呢?

 

Ⅰ 安装变化

 

安装的命令已经统一为

 

 

如果使用 locustio,则必须指定以前0开头的版本,不然安装会报错。

 

Ⅱ 参数变化

 

参数对比:

Ⅲ 代码类变化

 

1、把Locust类,重命名为User, HttpLocust类,重命名为HttpUser, TaskSet类属性locust重命名为user

 

2、可以在继承User类下,直接使用@task装饰器

 

3、以前Locust类中的task_set属性,已经被移除,现在改用User类中的tasks属性,且tasks的写法只能是列表,或字典

 

 

4、增加了tag标签,在执行时,可以用 -T  --tags 指定标签执行、-E --exclude-tags排除指定标签执行

 

 

5、环境变量发生变化

 

LOCUST_MASTER 重命名为 LOCUST_MODE_MASTER

 

LOCUST_SLAVE 重命名为 LOCUST_MODE_WORKER

 

LOCUST_MASTER_PORT 重命名为 LOCUST_MASTER_NODE_PORT

 

LOCSUT_MASTER_HOST 重命名为 LOCUST_MASTER_NODE_HOST

 

CSVFILEBASE 重命名为 LOCUST_CSV

6、分布式中,助攻进程的参数,由 --slave \ expect-slaves 更改为 --worker \ --expect-workers

 

7、无图形模式启动参数,由 --no-web 更改为 --headless

 

8、移除了 Locust.setup、 Locust.teardown、 TaskSet.setup、 TaskSet.teardown,改用 on_test_start、on_test_stop

 

9、以前的顺利类 TaskSequence 和 顺序装饰器@seq_task 已经全包变更为 SequentialTaskSet。

 

这个顺序类,将忽略任务的权重。任务的执行顺序,以任务的声明顺序来执行

 

 

10、运行数据记录,csv文件,表头发生变化,增加统计,使表头意思更清晰明了

 

11、结果写入csv文件的参数 --csv-base-name 已经被移除

 

12、控制台日志,不在用标准输出stdout(或标准错误输出stderr),要输出日志,可以直接用print()进行输出,也可以用logging模块,定义日志

 

Ⅳ 脚本模板

 

已经知道locust1.* 版本与以前locust 0.* 版本区别了,是不是就想要一个脚本模板呢?下面就给大家一个脚本模板,供大家参考:

 

 

posted @ 2020-07-14 21:21  柠檬班软件测试  阅读(978)  评论(0编辑  收藏  举报