博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
(九)Locust 参数化
阅读量:5257 次
发布时间:2019-06-14

本文共 984 字,大约阅读时间需要 3 分钟。

转: http://www.testclass.net/locust/parameterization/

 

使用 LoadRunner 和 JMeter 的同学都知道,性能测试工具设置参数化颇为麻烦,但对于 Python 来说,生成点数据再简单不过了。

参数化系统登录


这里以某系统登录为例,简单介绍登录用户名密码的参数化实现

from locust import HttpLocust, TaskSet, taskfrom 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 语言。

转载于:https://www.cnblogs.com/shmily2018/p/9862599.html

你可能感兴趣的文章
项目管理之路(1):初步踏入项目管理
查看>>
Java 中 静态方法与非静态方法的区别
查看>>
crypto加密
查看>>
Apache Jackrabbit 2.6.0 发布
查看>>
echarts饼图显示百分比
查看>>
JMS消息
查看>>
16位整数,32位整数,64位整数
查看>>
Jenkins+ProGet+Windows Batch搭建全自动的内部包(NuGet)打包和推送及管理平台
查看>>
php上传文件及头像预览
查看>>
【译】在Transformer中加入相对位置信息
查看>>
大四java实习生的一些经历
查看>>
python programming
查看>>
线程池的概念
查看>>
USB打印机开钱箱
查看>>
mysql数据库 中文乱码
查看>>
Linux下Mysql数据库互为主从的配置过程
查看>>
ECSHOP系统,数据库表名称、结构
查看>>
Python Web开发框架Django
查看>>
【Install】我是如何安装Linux类系统的
查看>>
作业三4
查看>>