jmeter oracle数据库测试_查增删改

2019-03-23  本文已影响0人  坚持未来

在jmeter 中测试数据库

首先要做的就是能够链接到数据库。分以下几步:

第一步:在测试计划中添加链接数据库的驱动。

oracle数据库驱动一般在安装目录:如下路径,

D:\app\product\11.2.0\dbhome_1\jdbc\lib  

里面有:ojdbc6.jar    ojdbc5.jar   也有可能是以12  14 这样的文件,这个要自己区分。

linux 上面的oracle目录大致相同。如果找不到可以找java开发人员要一个,这个驱动的版本要和数据库匹配,否则链接不成功。

找到上面的jar包后,拷贝一份出来,放到一个其他目录,待用。

在jmeter 的测试计划  ——》点击预览,添加驱动的jar包。

添加驱动这一步完成后,就需要添加一个线程组,

第二步:在线程组里面添加一个配置元件——》JDBC Connection Configuration

接着设置该配置元件。

变量池的名称:这里设置为  ora_scott   这个一定得写,后面配置JDBC请求是要使用。

事务隔离: 选择default

查询验证: select 1 from dual     一般用这个。 select 1  自己尝试下。报错就要再调下。

Oracle

Driver class       oracle.jdbc.OracleDriver

Database URL      jdbc:oracle:thin:@//host:port/service  OR  jdbc:oracle:thin:@(description=(address=(host={mc-name})(protocol=tcp)(port={port-no}))(connect_data=(sid={sid})))


database URL :    jdbc:oracle:thin:@localhost:1521:ORCL          --本机  端口1521  数据库SID :ORCL           

JDBC Driver class :oracle.jdbc.driver.OracleDriver     --// 加载驱动程序OracleDriver   这个一个类

username :     --链接数据的用户名。

password :     --链接数据库的密码。

这里的用户名,密码,是客户端登录的用户名和密码。

以上设置OK后,接下来就需要添加 JDBC Request 采样器。

绑定到池的变量名:ora_scott   就是刚刚在配置元件里面配置的。

sql query  sql查询: 查询类型:

查询就选择  :select statement      直接写语句即可,末尾不加分号。

select * from emp where empno = 7369 

更新: update statement      这里可以执行更新  和插入 、删除的 语句。insert into emptest(empno,job,hiredate,sal,comm) values(35,'CLERK',date'1980-12-07',999.99,null)

delete from emptest      --删除表里面的数据   

调用过程(即可以执行多条语句): callable statement

例子是声明的过程:

declare       --声明的关键词

v_job varchar2(9);       --声明的变量

begin               --开始

v_job := 'cc';             --给变量赋值  :=

delete from emptest;       --执行第一个语句 ,清空数据库

insert into emptest(empno,job,hiredate,sal,comm) values(35,v_job,date'1980-12-07',999.99,null);   --执行第二个语句,插入数据

end;             ----结束   

这里可以执行多条语句,每条语句以;分号结尾,可以不声明declare ,但必须要写begin  ..... end ;

使用占位符设置预处理数据:Prepared  select statement  

例子1:     select * from emp where sal = ?    Prepared  value :  800   Prepared types :FLOAT    这个对应的是有小数的字段

例子2:     select * from emp where empno = ?    Prepared  value :  7369   Prepared types: Integer      这个是整数

例子3:select * from emp where empno = ? and ename = ?    Prepared  value :  7369,SMITH       Prepared types:Integer,Varchar         这个对应的是字符串

例子4:select * from emp where hiredate = ?   Prepared  value : 1980-12-17    Prepared types:  date    这个对应的是日期

提交: commit

回滚 :rollback

输出变量名: var1, var2    如果查询的是* ,那var1 对应的就是第一个字段,var2 对应的就是第一个字段。这个设置又有什么用处呢?设置成功后,可以用Debug 采样器来看下输出的变量的值。

empno_#=14      ----查询返回结果的总条数

empno_1=7369      empno 就是输出的变量名, 1 就是第一条数据   _  是链接符号,

empno_10=7844

empno_11=7876

empno_12=7900

empno_13=7902

empno_14=7934

empno_2=7499

empno_3=7521

empno_4=7566

empno_5=7654

empno_6=7698

empno_7=7782

empno_8=7788

empno_9=7839

看到以上的输出结果,要怎么用他呢? 加入咱们现在请求的是数据库里面保存用户名、密码的表,请求返回的字段就是  username, password  这2个字段,我们要用这2个字段做登录请求,那该怎么取出这2个字段的值呢?

这里就得用到控制器了:ForEach控制器。看看如下的设置,是不是有一种柳暗花明的感觉,突然就开朗了。这个就设置输出变量名,result_empno   这个可以用在其他的采样器中发送 请求了。

下面是使用上面输出的值,做了一个数据库的变量请求。这里以来就又多了一种参数的方式。因为这里的变量不仅可以再次请求数据库,还可以作为其他请求的参数使用。

上一篇下一篇

猜你喜欢

热点阅读