美文网首页
JMeter从数据库随机获取一个用户名作为参数进行登录模拟

JMeter从数据库随机获取一个用户名作为参数进行登录模拟

作者: 莫尛莫 | 来源:发表于2019-11-01 18:03 被阅读0次

    需求:
    数据库有50w个用户名;
    JMeter需要随机取其中一个作为登录接口的参数。

    首先要解决MySQL怎么随机取数据

    百度到了这个结果:

    SELECT 字段名 FROM 表名 ORDER BY rand() LIMIT 数量;
    

    其中rand()就是随机函数了, 首先随机顺序排序, 然后取一个数据, 就达成要求了.

    再来看看JMeter怎么从数据库中取数据吧

    1. JMeter添加线程组;
    2. 线程组下添加JDBC Connection Configuration
    3. 配置JDBC Connection Configuration


      配置JDBC Connection Configuration
    • 数据库连接池名称
    • 数据库URL
    • JDBC数据库类, 选择com.mysql.jdbc.Driver
    • 数据库用户名
    • 数据库密码
    1. 线程组下添加JDBC Request
    2. 配置JDBC Request


      配置JDBC Request
    • 要绑定的数据库连接池名称(这个要告诉JMeter从哪个数据库连接池运行SQL脚本, 自然要和JDBC Connection Configuration 一致)
    • SQL脚本
    • 变量名称(name后面带个s, 说明肯定和一般的变量名称不一样)
      variables names设置为A,C,那么如下变量会被设置为:
      A_#=2 (总行数)
      A_1=第1列, 第1行
      A_2=第1列, 第2行
      C_#=2 (总行数)
      C_1=第3列, 第1行
      C_2=第3列, 第2行

    如果返回结果为0,那么A_#和C_#会被设置为0,其它变量不会设置值。
    如果第一次返回6行数据,第二次只返回3行数据,那么第一次那多的3行数据变量会被清除。
    可以使用 ${A_#}${A_1}...来获取相应的值

    最后把取到的值用起来就搞定了

    1. 线程组下添加登录的HTTP请求
    2. 配置HTTP请求
      配置HTTP请求
      其他配置就不在本文详述了, 只提这个关键的内容: 上一个步骤中, 我们设置了Variable namesuser_account, 这里我们在用的时候, 就要写user_account_1就是SQL脚本取到的值的第一个数据了.

    相关文章

      网友评论

          本文标题:JMeter从数据库随机获取一个用户名作为参数进行登录模拟

          本文链接:https://www.haomeiwen.com/subject/rrkqbctx.html