zoukankan      html  css  js  c++  java
  • Jmeter连接数据库并使用数据表数据作为接口所需参数

    jmeter连接数据库,并且使用数据库的用户名密码进行登录操作,具体步骤如下:

    1、参考博客<Jmeter连接SqlServer数据库并操作>进行相关内容的补充,修改JDBC Request查询sql语句,并定义变量名为username,如下图: 

    【参数说明】

      ariable Name: 数据库连接池的名字,需要与上面配置的JDBC Connection Configuration中Variable Name Bound Pool的Variable Name相同

      Query:填写的sql语句未尾不要加“;”

      Parameter valus:参数值

      Parameter types:参数类型,可参考:Javadoc for java.sql.Types

      Variable names:保存sql语句返回结果的变量名

      Result variable name:创建一个对象变量,保存所有返回的结果

      Query timeout:查询超时时间

      Handle result set:定义如何处理由callable statements语句返回的结果

    2、设置http请求的参数,若JDBC Request中Variable name设置了多个参数,如A,B,C,那么HTTP中参数的设置就是${参数AorBorC_N},及表示参数AorBorC列的第N行数据值,如下图: 

    3、运行脚本,查看运行结果,如下图:

    以上完成了运用数据库中数据作为接口参数的单个使用,如何进行批量使用,即如何做到运用数据库数据做接口参数做压力测试呢,下面做一个简要说明:

    【说明】

      JDBC Request中Variables name:

      variables names设置为A,B,C那么如下变量会被设置为:

        A_#=2 (总行数)

        A_1=第1列, 第1行

        A_2=第1列, 第2行

        C_#=2 (总行数)

        C_1=第3列, 第1行

        C_2=第3列, 第2行

      可以使用${A_#}、${A_1}...来获取相应的值

    4、 添加循环控制器,设置循环次数为总行数,如下图:

    5、因为我们取的值是根据${username_N}来取的,那么这个N可以通过计数器递增的方式获得,我们需要添加一个计数器,如下图:

     

    6、 使用函数助手,获取嵌套函数,如下图:

     

    【说明】

      ${A1}:能正常工作。

      ${A${N}}:无法正常工作(嵌套变量引用)。

      ${__V(A${N})}:可以正常工作。A${N}变为A1,函数 __V返回变量值A1。

    7、 替换掉http请求中的参数,如下图:

     

    8、运行脚本,查看结果,如下图:

     

  • 相关阅读:
    霍夫直线检测进行复杂环境的树干提取
    matlab工具箱之人眼检测+meanshift跟踪算法--人眼跟踪
    deep learning 练习 牛顿法完成逻辑回归
    deep learning 练习 多变量线性回归
    deep learning 练习1 线性回归练习
    关于移动端键盘弹出
    关于Redux
    docker registry的CI规划
    建立自己的私有docker(ssl&login auth)
    逻辑编程
  • 原文地址:https://www.cnblogs.com/danmai/p/8399615.html
Copyright © 2011-2022 走看看