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:\Windows\System32,重新启动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)运行脚本,查看结果树

 

posted @ 2020-12-31 14:58  Mr.Chiang  阅读(425)  评论(0编辑  收藏  举报