jmeter 登录跨线程组解决方案

  1. 使用python批量插入用户数据,手机号随机生成,密码统一插入123456的加密字符
import pymysql

db = pymysql.connect(
    host="124.70.xxx.xxx",
    user="root",
    password="3Dmaxxxx",
    database="novel"
)

mycursor = db.cursor()
phone = ( (phone,phone) for phone in range(13100110000,13100112000))

sql = "INSERT INTO `novel`.`user`( `username`, `password`, `nick_name`, `user_photo`, `user_sex`, `account_balance`, `status`, `create_time`, `update_time`) VALUES (%s, '25d55ad283aa400af464c76d713c07ad', %s, NULL, NULL, 0, 0, '2022-09-07 21:53:04', '2022-09-07 21:53:04');"
try:
    # 执行sql语句
    mycursor.executemany(sql,phone)
    # 提交到数据库执行
    db.commit()
except Exception as e:
    print(e)
    # 如果发生错误则回滚
    print("发生错误了")
    db.rollback()

使用jmeter结构如下

  • setup线程组用于账号密码登录
  • json提取器 用户提取用户token
  • beanshell 用于将提提取的token变成全局变量
// 将获取的token,保存为全局变量,共享给其他的线程组(采用login_token_${number}的方式区别不同的用户)
// 会创建100个全局属性: login_token_1 , login_token_2, login_token_3,login_token_.....
${__setProperty(login_token_${number},${login_token},)}

  • 书架线程组提取token的方式为${_property(login_token${__Random(1,100,)},,)}

    可以添加一个调试取样器看到所有的变量
posted @ 2022-09-22 00:17  我是小菜鸡丫丫  阅读(169)  评论(0编辑  收藏  举报