(三)使用Jmeter模拟300个用户登录
1.首先在系统中创建300个用户(在这里使用 pl/sql 进行循环创建);
代码如下:
--先对原先的表进行备份 ;
CREATE TABLE sys_user_bak AS SELECT * FROM sys_user_bak s ;
1 DECLARE 2 maxid NUMBER; --主键列 ; 3 BEGIN 4 SELECT nvl(MAX(ID),0) INTO maxid FROM sys_user ; 5 FOR i IN 1 .. (maxid+100) LOOP 6 SELECT nvl(MAX(ID),0)+1 INTO maxid FROM sys_user ; 7 8 INSERT INTO sys_user 9 VALUES 10 (maxid,'ylb'||i,'ylb'||i,'ylb'||i,'8ddcff3a80f4189ca1c9d4d902c3c909',2,6,NULL,0,1, 11 CURRENT_TIMESTAMP ,1,CURRENT_TIMESTAMP ,SYSDATE); 12 END LOOP ; 13 COMMIT ; 14 EXCEPTION 15 WHEN OTHERS THEN dbms_output.put_line(SQLCODE||SQLERRM); 16 ROLLBACK ; 17 END;
--清空日志表中所有数据;如果有用户登录的话会自动记录该用户的所有信息;
TRUNCATE TABLE sys_log ;
--查询当天登录的用户 ;
select Distinct(userid),username FROM sys_log s WHERE to_char(s.logdate,'yyyymmdd')='20161102';
SELECT userid,username FROM sys_log s WHERE to_char(s.logdate,'yyyymmdd')='20161102';
2.下面说 使用badboy进行应用程序的录制 :
a.录制完毕后;将录制的脚本保存为*.jmx ; file>/Export to Jmeter...
b.打开Jmeter 在打开中找到自己刚才录制的 *.jmx 脚本 ;
导入后的 截图:
3.关于 用户名和密码的参数
a.在线程组上右键/添加/配置原件/CSV data set config
参数创建完毕后,需要在某些地方进行引用 ,那么在哪里进行引用呢?
所有参数配置完毕后就可以进行线程启动了 :
a.用鼠标点击线程登陆线程 后 点击 “启动” 按钮;
下面我们来看测试结果:
测试结果中发现的bug :
发现在http://192.168.1.110/CISS/loadSettleMentMainPage.action 的相应结果中显示出了 所有人员的信息: