• JMeter接口测试-连接SQL Server


    (1)下载jdbc驱动(注意下载对应版本),并放在jmeter的lib目录下,重启jmeter,如下图:

              sqljdbc4.jar sqljdbc4-2.0.jar.zip 解压一下再放在lib目录下

    (2)测试计划下配置驱动程序,如下图

             点击浏览,把jar的路径添加进来

    (3)添加配置原件JDBC Connection Configuration,如下图

    (4)在JDBC Connection Configuration配置中填写相应项,注意通过sql账号密码连接SQL server和通过windows身份验证连接SQL server这两种情况下的填写项有所不同,下面会分别介绍

            4.1通过sql账号密码连接SQL server,这里以通过账号SOPAdmin,密码SOPAdmin连接ebizflcnuat/SOP库为例

     

    Variable Name:自己定义一个变量名

                 Database URL: jdbc:sqlserver://localhost:port;databaseName=***

                 localhost和port可以通过查看sql configuration manager获取,如下图,把Alias对应的server和parameters替换database url里的localhost和port值即可

     

     JDBC Driver class:com.microsoft.sqlserver.jdbc.SQLServerDriver,固定写这个

                 Username:用户名

                 Password:密码

            4.1通过windows验证连接SQL server,这里同样以连接ebizflcnuat/SOP库为例

     下载sqljdbc_auth.dll(sqljdbc_auth(jb51.net).rar),并放到C:WindowsSystem32,重新启动Jmeter

                 Database URL: jdbc:sqlserver://localhost:port;integratedSecurity=true;databaseName=***

                 JDBC Driver class:com.microsoft.sqlserver.jdbc.SQLServerDriver,固定写这个

                 Username和Password不用填

    (5)添加JDBC Request,并填入对应参数,如下图

     

    (6)引用sql返回的某一个字段值作为http请求的request 参数

             参数引用:${JDBC Request中的变量名_N},N表示sql返回的该字段下面的第N行

             例如我想取select top 10 * from dbo.permission_jobs返回的jobid字段的第7行的值,jobid我定义为变量a,引用参数的地方用${a_7}

    (7)引用sql返回的批量字段值作为请求参数,用于压力测试

             例如我想取select top 10 * from dbo.permission_jobs返回的10个jobid,依次去调用http请求2

            【说明】

        JDBC Request中Variables name:

        假设variables names设置为a,b,c那么如下变量会被设置为:

        a_#=10 (总行数) 因为我设置的sql是top 10,所以总行数是10条

        a_1=第1列, 第1行

        a_2=第1列, 第2行

        c_#=10 (总行数)

        c_1=第3列, 第1行

        c_2=第3列, 第2行

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

    (8)添加循环控制器,设置循环次数为总行数,如下图

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

    (10)引用参数的地方用${__V(a_${N})}

    (11)运行脚本,查看结果树

  • 相关阅读:
    error: reached end of file while parsing
    linux中平均负载 average load
    linux中查看占用cpu和内存最高的进程
    Java基础知识常见面试题汇总
    快速排序
    socket.io的小例子
    js下载cos或者oos资源
    docusaurus简单使用
    mac快速安装git
    python使用win32gui操作窗口
  • 原文地址:https://www.cnblogs.com/jiangjunyong/p/14216779.html
Copyright © 2020-2023  润新知