1) 插入事务(录制前或录制后)
显示事务:手工插入
隐式事务:Run-time Settings
2) 参数化(只有部分函数的参数才能参数化,只支持mpctext参数化)
第一步:用参数替换vuser脚本中的变量
第二步:为参数设置属性和数据源
(1)browser设置:filepath相对路径./parameter/xxx.dat
(2)Select column设置:by number or by name
(3)Column delimiter设置:分隔符
(4)File date line设置:脚本执行时从第几行数据开始使用
(5)Select next row设置:针对controller设置vuser执行顺序
分配方法 | 描述 |
sequential顺序 | 顺序地向vuser分配数据。当正在运行的vuser访问数据表时,她将会提取下一个可用的数据行。如果在数据表中没有足够的值,则vuGen返回到表中的第一个值,循环继续直到测试结束 |
random | 为每个vuser分配一个数据表中的随机值。当运行一个场景、会话步骤或业务流程监控器配置文件时,可以指定随机顺序的种子数。每个种子值代表用于测试执行的一个随机值属性。每当使用该种子时,会将相同顺序的值分配给场景或会话步骤中的vuser。如果在测试执行中发现问题,并且要使用相同的随机值顺序重复该测试,请启用该选项 |
unique | 为每个vuser的参数分配一个惟一的顺序值。在这种情况下,必须确保表中的数据对所有的vuser和他们的迭代来说是充足的。如果拥有20个vuser,并且要运行5次迭代,则表格中必须至少包含100个唯一值。 |
(6)Update value on设置:设置脚本迭代过程中取值的策略
更新方式 | 描述 |
each occurrence | vuser在每次参数出现时使用新值,当使用同一个参数的几个语句不相关时,该方法非常有用。例如,对于随机数据,在该参数每次出现时都使用新值可能是非常有用的 |
each iteration | vuser在每次脚本迭代时使用新值。如果一个参数在脚本中出现了若干次,则vuser为整个迭代中,该参数的所有出现使用同一个值。当使用同一个参数的几个语句相关时,该方法非常有用 |
once | vuser为该参数的所有出现和所有迭代都使用同一个参数值。当使用日期和时间时,该类型非常有用 |
例如,在controller中设置一个场景,选择unique和each iteration要求10个虚拟用户中的每个都进行10次迭代。那么编号为1的虚拟用户取前10行数据,编号为2的虚拟用户取11到20行数据,依次类推,这样数据表中至少要有100个数据,否则controller运行过程中会返回一个错误。
(7)数据分配和更新方式组合表
更新方法 | 数据分配方法 | |||
sequential | random | unique | ||
each iteration | 对于每次迭代,vuser从数据表中提取下一个值 | 对于每次迭代,vuser从数据表中提取新的随机值 | 对于每次迭代,vuser从数据表中提取下一个唯一值 | |
each occurence | 参数每次出现时,vuser将从数据表中提取下一个值,及时在同一迭代中 | 参数每次出现时,vuser将从数据表中提取新的随机值,及时在同一迭代中 | 参数每次出现时,vuser将从数据表中提取新的唯一值,及时在同一迭代中 | |
once | 对于每一个vuser,第一次迭代中分配的值将用于所有的后续迭代 | 第一次迭代中分配的随机值将用于vuser的所有迭代 | 第一次迭代中分配的唯一值将用于该vuser的所有后续迭代 |
3) 集合点(录制前或录制后)
集合点一般会创建在用户事务的开始标志前,只能在脚本的action部分添加集合点。
4) 检查点
插入步骤:(以text/image check 为例)
第一步:切换到tree view
第二步:在树形菜单中选择需要插入检查点的一项,点击鼠标右键
第三步:选择检查点类型和插入函数(web_find web_reg_find)
Web_find | Web_reg_find |
只能基于html模式录制的脚本 |
|
必须开启内容检查选项run-timesetting->preferences |
|
在返回的页面中进行内容查找,必须写在查找内容所在页面的后面 | 在缓存中进行查找,必须写在要查找内容的请求之前 |
针对html页面显示的内容来查找 | 针对html的源文件进行搜索 |
Web checks 中 | Web services中 |
(1)web_find
(2)Web_reg_find
5) 关联
当从服务器返回的值是一个动态变化的值时,在录制和回放时就会出错,这时通过关联技术来解决回放参数
1. 关联技术
(1)录制中关联tools recording Options
(一)制定规则:
内建关联规则
用户自定义规则
(二)规则的应用
第一步:启动自动关联
第二步:运行脚本验证关联机制
(2)录制后关联
脚本至少要执行一次,vuser scan script for correlations Tools——general options
(3)手动关联
① 录制两份相同的业务流程和数据的脚本
② 使用WinDiff工具比较两份脚本,找到需要关联的数据 :tools compare with vuser
③ 找到左边界和右边界字符串
在回放日志中注意查看response body字样的数据段Runtime-settings-log-Extended log-data returned by server
使用web_reg_save_param(从页面源文件中查找需要的字符串)函数手动建立关联
例如 Web_reg_save_param("flight_num","LB=<input type = /"checkbox/" name =/" ","RB=/"value=/"on/">","ORD=ALL",LAST")//将找到的结果保存在flight_num数组中
注意:使用注册性函数时,要注意其放置的位置必须在要作用的action function之前
④ 将脚本中有用到关联的数据,以参数取代
6) 插入注释
7) 迭代设置
注意:如果在controller的计划设置中指定了方案持续时间,则持续时间设置将覆盖Vuser迭代设置。
操作快block是脚本内函数的组合。每个块都有自己的单独属性设置,包括顺序、迭代和权重