前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >Locust 参数化

Locust 参数化

作者头像
全栈程序员站长
发布2022-09-07 11:09:32
3630
发布2022-09-07 11:09:32
举报
文章被收录于专栏:全栈程序员必看

大家好,又见面了,我是你们的朋友全栈君。

(九)Locust 参数化

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

参数化系统登录

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

代码语言:javascript
复制
from locust import HttpLocust, TaskSet, task
from 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() 方法实现 随机用户的登录。

关于参数化方式很多,这里起一个抛砖引玉作用。

发布者:全栈程序员栈长,转载请注明出处:https://javaforall.cn/148056.html原文链接:https://javaforall.cn

本文参与 腾讯云自媒体同步曝光计划,分享自作者个人站点/博客。
如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 作者个人站点/博客 前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体同步曝光计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
目录
  • (九)Locust 参数化
    • 参数化系统登录
    领券
    问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档