一、需求:
1、业务需求:根据手机号到数据库中查看用户id,再根据用户id查看该注册用户下关联的健康成员。
2、参数化分析
1)需要根据不同的手机号进行查询,所以手机号需要进行参数化
2)用户id要作为下一个查询的参数,所以也需要参数化
二、实现
1. 下载数据库驱动包,并在jmeter中添加该jar包
下载mysql-connector-java.jar,存放到本地如:D:\jmeter相关
引入jar包:测试计划->浏览->选择jar文件
2. 添加 DBC Connection Configuration
右键线程组->添加->配置元件->JDBC Connection Configuration
配置
说明:
Variable Name:注意该变量名,后面添加jdbc请求时都需要与该名称保持一致。
Database URL:jdbc:mysql://mysql_host_ip:mysql_port/mysql_db_name
JDBC Driver class:com.mysql.jdbc.Driver
username:数据库用户名
password:数据库密码
3. 添加用户变量
4. 添加JDBC Request
右键线程组->添加->Sampler->JDBC Request
配置:
Variable Name:注意与之前配置的名称保持一致
Query Type:含变量的sql查询,选择Prepared Select Statement
Query:输入sql语句,注意不要加分号
Parameter values:引用用户定义的变量${my_phone}
Parameter types:变量的类型varchar
Variable names:保存查询结果,供后续接口调用,注意调用时加“_1”
5.添加HTTP请求
右键线程组->添加->Sampler->HTTP Request
注意:
服务器名称或IP:不要加http://
变量值:使用数据库查询结果作为变量 ${my_id_1},注意加“_1”
6.添加查看结果树
右键线程组->添加->监听器->查看结果树
7.运行
可以的。Mysql:
1、Mysql驱动包放在
Jmeter 的 lib 目录下
Jmeter的 lib/ect 目录下
2、从数据库中获取
当参数的值没有规律且量比较大时,可以选用这种方法。
具体做法如下:
(1)下载MySQL JDBC “http://dev.mysql.com/get/Downloa ... st.ac.jp/pub/mysql/”
(2)解压下载的zip包后,将其中的mysql-connector-java-5.1.12-bin.jar放到Jmeter的lib目录下
(3) 添加“配置元件”->“JDBC Connection Configuration”,设置下列参数:
Database URL:jdbc:mysql://host:port/db(如jdbc:mysql://localhost:3306/testlink
JDBC Driver class:com.mysql.jdbc.Driver
username:连接数据库的用户名(如root)
password:连接数据库的密码
(4)添加“Sampler”->“JDBC Request”,在SQL Query中输入查询语句,如下:
SELECT CONCAT (“[",
GROUP_CONCAT(
CONCAT("{username:'",login,"'"),
CONCAT("{password:'",password),"'}"),"]“) AS json FROM users
(5)在4.4中的JDBC请求中添加“后置处理器”->“正则表达式提取器”,以提取3.4中的用户名和密码为例设置正则表达式提取器的参数:
引用名称:user
正则表达式:username:’(.+?)’\{password:’(.+?)’
模板:$1$$2$
使用时,user_g1即为用户名,user_g2即为对应用户名的密码;更多正则表达式提取方法参见Jmeter正则表达式提取器
解决策略:客户机要想连接远程数据库只能通过SSH连接。
步骤1.在客户机,跳板机,远程数据库分别安装SSH
步骤2.在客户机命令行输入 SSH –L 3308:192.168.125.130:3306 root@192.168.125.129
3308:在客户机开启的端口号
3306:远程数据库端口号
root@192.168.125.129 跳板机用户名和主机
步骤3.输入跳板机密码
至此,已成功建立SSH连接。(SSH端口原理请自行百度)
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)