性能测试如何使用locust进行参数化

如何使用locust不同手机登录参数化:

首先认识python队列Queue:

Queue是python标准库中的线程安全的队列(FIFO)实现,提供了一个适用于多线程编程的先进先出的数据结构,即队列,用来在生产者和消费者线程之间的信息传递

基本方法:

Queue.Queue(maxsize=0) FIFO,如果maxsize小于1就表示队列长度无限
Queue.LifoQueue(maxsize=0) LIFO,如果maxsize小于1就表示队列长度无限
Queue.qsize() 返回队列的大小 
Queue.empty() 如果队列为空,返回True,反之False 
Queue.full() 如果队列满了,返回True,反之False
Queue.get([block[,timeout]]) 读队列,timeout等待时间 
Queue.put(item, [block[,timeout]]) 写队列,timeout等待时间 
Queue.queue.clear() 清空队列

如何使用:

importQueue

q = Queue.Queue()

for i in range(5): q.put(i)

while notq.empty():

print q.get()

输出:0,1,2,3,4

importQueue

q = Queue.LifoQueue()

for i in range(5):

q.put(i)

while notq.empty():

print q.get()

输出:43210

那么认识了队列Queue,locust如何使用例如接口:

http:xxx/Login

user_data = queue.Queue()

for i in range(100):

data = {

"username":"test%d" % i,

              "password": "pwd%d" % i

}

user_data.put_nowait(data)

通过循环,每次put 数据data到队列结尾

实际场景:

from locust import HttpLocust, TaskSet,task

import queue

class test_taskset(TaskSet):

@task //执行任务task(1,2,3等表示权重)

def register(self):

try:

data = self.locust.queueData.get() //获取队列里的数据

print(data)

except queue.Empty: //队列取空后,直接退出

print('no data exist')

exit(0)

data['password']))

payload = {

'username': data['password'],

'password': data['username'],

}

self.client.post('login', data=payload)//POST方法发送请求

class test_run(HttpLocust):

host = 'xxx/zhuce'

task_set = test_taskset

queueData = queue.Queue() //队列实例化

for count in range(50): //循环数据生成

data = {

"username": "test%d" % count,

"password": "pwd%d" % count,

}

最后: 为了回馈铁杆粉丝们,我给大家整理了完整的软件测试视频学习教程,朋友们如果需要可以自行免费领取 【保证100%免费】

全套资料获取方式:点击下方小卡片自行领取即可

 

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

代码小怡

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值