录制及回放的注意点:
1、测试系统教复杂时,正确的划分action,对监控的每一个业务模型和操作,起到重要作用
2、录制完成后,先进行编译(改动脚本之后检查下有没有语法错误):工具栏Vuser下有一个compile(Shift+F5)
3、编译完成后,进行回放:单步执行(人工一步一步执行)的方式:按F10或Vuser下面的Run step by step
4、所有手动添加的语句后面都有分号,不确定可以先编译下找到错误
步骤:比如登录一个系统后注销登录
一、录制:
1、打开url,Action选择Vuser_init——打开工具后,选择录制的url,以及Record into Action选择Vuser_init初始化脚本(Vuser_init在整个脚本中只运行一次)
2、访问到url页面之后,Action切换到Action,可以自己点击右边的按钮给action修改个名字,也可以录制成功之后修改action名字
3、登录页面输入用户名、密码后点击登陆按钮时,Action也选择action——为了区分,新增一个action进行录制,输入用户名密码后点击登陆按钮
4、退出登录按钮时,切换到Vuser_end——点击退出登录按钮(Vuser_end在整个脚本中也只运行一次)
二、回放
1、编译(检查下有没有语法错误):工具栏Vuser下有一个compile(Shift+F5)
首次编制时间比较长,编译没问题就会在下面显示No errors detected
2、单步执行(编译完成后就进行单步执行):按F10或Vuser下面的Run step by step
三、脚本优化:插入事务点、参数化、集合点和检查点
1、插入事务点方法:
1.1、可以录制时设置
1.2、也可以录制完成后手动编制
鼠标放到需要插入事务点的地方,手动输入lr_start_transaction("confirm"); 在结束的地方输入 lr_end_transaction("confirm", LR_AUTO);
1.3、也可以录制完成后点击事务按钮添加:工具栏的2个按钮、或Insert下面的2个按钮,作用是一样的
2、插入集合点方法(必须在操作的前面):
2.1、手动编辑 lr_rendezvous("login");
2.2、鼠标放在指定位置后,点击按钮
3、参数化方法:(不建议直接选中参数后右键Replace with a Parameter,因为这样会直接吧admin带进来,有些地方要求唯一性。。。。)
3.1、工具栏倒数第2个按钮Open Parameter List
3.2、Insert下的New Parameter新建参数
设置好参数之后,选中页面的参数后进行替换
参数化之后,进行编译,再运行,如何确定运行返回的日志是哪个人员进行登陆的,可以手动添加脚本或Vuser下点击按钮添加 lr_log_message("用户名%s",lr_eval_string("{user}")); 运行后回放日志里面会返回登陆的用户名
4、设置检查点:因为在第3步给登陆用户名进行参数化时,输入了一个不存在的登陆用户名aaa,但是运行结果也是pass,所以在大压力测试时有必要设置检查点
步骤:4.1、目前操作时在Script页面,点击进入Tree模式,去查看登陆页面的response页面
4.2、找到登陆成功页面存在的“退出”按钮——全选中后右键——Add Text Check Step (相当于web_reg_find)文本检查点——(第一个勾选框时文本检查,第2个勾选框是代码检查,默认选第一个)勾选最下面一行fail if在Not Found情况下表示没有发现你选择的那几个字就会失败
4.3、选好检查点后,回到Script脚本页面,会发现文本检查点脚本存在页面上
4.4、因为文本检查点会占用系统资源,所以默认是不开启的,需要手动开启:参数选项——Preference勾选Enable Image and text check
4.5、编译没有语法错误后就运行
5、脚本验证:将文本检查点稍微修改下之后,在后面进行判断