脚本录制优化

1.脚本的录制

Start Record  选择协议web/http  添加url

首页放到初始化里 init

将某些操作放到新的Action里面(在录制的小窗口改变init->action 或者new action)

将注销部分放到 vuser_end

Action的划分很有必要 (业务模型)

vuser_init  只执行一次

into_login

submit_login     web_submit_data 提交数据 参数化

vuser_end  只执行一次

2.脚本的回放

录制完成后回放 首先编译 compile   No error detected(发现)

单步执行 F10  vuser->step by step

Note: LoadRunner是用底层事件流方式进行压力测试而qtp是记录每个事件  因此即使LoadRunner的Result是pass 结果也不一定pass

3.脚本的优化

有的时候action的划分的 不是自己想要的 所以需要脚本的优化

1>单独的业务 需要插入事物点 (想衡量的业务点 如登录成功需要多少s)

2>参数化  ①脚本简洁②更真实的模拟用户的情况

3>集合点 (压力较大) 提交(更真实的模拟用户 如10个用户一起点击)

4>检查点 如何检查用户登录是否成功(脚本)需插入文本检查点

优化的方式①语句编写②界面的按钮

一、登录成功页面 添加事物点

  怎样插入事物点

  ①函数直接写

  ②工具栏上添加 Insert Start Transaction(Ctral+T)/ End Transaction(Ctrl+D)

  ③Insert->start transaction

添加事物点-> 衡量业务所用的时间

lr_start_transaction("confirm message"); /*该事物点的作用是统计登录成功反馈信息*/

lr_end_transaction("confirm page",LR_AUTO);

二、添加集合点(在业务操作的前面做 如:提交 登录)  web_submit_data前

  怎样添加集合点

  ①函数

  ②Insert-> Rendezvous

lr_rendezvous("login_rendezvous");/*设置登录提交操作的集合点*/

三、设置参数化

      1>新建参数①工具栏 Open parameter list②Insert->New Parameter

    New parameter ->username type:table addrow->username

  2>右键(想参数化的地方 如用户名)->use existing parameters->

 

怎样输出参数化的用户名

利用日志输出的方法获取用户名

在事物结束点后添加函数lr_log_message(" ", );

lr_log_message("用户名:%s",lr_eval_string("{username}"));

Note1.在run-time settings设置迭代次数 Number of Iterations ->2(有几个用户名就设置为几)

       2.用户名aaa不存在 但可以执行成功 是因为不具备校验的功能

          脚本通过不一定代表脚本是真正的执行了

四、设置检查点

  作用:在实际的大压力中登录不正常 设置检查点可以检查登录的状态(如用错误的用户名 系统未检测出)

  

  文本检查点

  web_find 界面检查

  web_reg_find 语言代码检查

 

posted @ 2018-11-06 12:52  Gromm_Hellscream  阅读(299)  评论(0编辑  收藏  举报