主要通过事务、集合点、参数化、检查点等方法来进行脚本的增强
一、事务点的设置
两种方法,可以在脚本录制时添加事务点,也可以在录制完成后直接页面插入函数来设置集合点。例如:需要在登录请求前设置事务点(讲解录制完成后插入事务点)
1、登录事务起始点
①登录接口前,右击,选择insert-new Step,查询“lr_start_transaction("")”开始函数
②双击起始函数,输入事务名称,单击“OK”,即可成功在登录请求前添加“登录事务起始点”
2、登录事务结束点(有始有终)
①登录接口后,右击,选择insert-new Step,查询“lr_end_transaction("")”结束函数
②双击结束函数,默认事务名称(与起始名称一致),单击“OK”,即可成功在登录请求后添加“登录事务结束点”
二、集合点的设置
例如:国庆假期抢票,北京-上海的动车票早上八点发售,那么在早上八点钟就有很多用户同时去抢票,此时服务器会不会因为大量用户的访问而崩溃?
提前预知可能有该问题,我们需要在系统上线前来验证这个问题,大量用户并发访问某一接口,人为比较难实现,所以需要借助设置“集合点”
1、登录集合点
①登录接口前,右击,选择insert-new Step,查询“lr_rendezvous("")”函数
②双击集合点函数,输入结合点名称,单击“OK”,即可成功在登录请求前添加“登录集合点”
2、确定航班集合点
①确定航班接口前,右击,选择insert-new Step,查询“lr_rendezvous("")”函数
②双击集合点函数,输入结合点名称,单击“OK”,即可成功在确定航班请求前添加“集合点”
三、参数化
模拟场景时,大量用户并发访问订票系统的登录接口。实际情况中,大量用户的登录信息不是一摸一样的,但脚本中仅包含一个人的登录信息。因此需要改进测试脚本,需要对脚本的登录信息进行参数化,使之更接近实际场景。换句话说,用变量来代替脚本中的常量
1、参数化登录信息
①对登录信息中的用户名(username)、密码(password)进行参数化
②右键单击输入信息“用户名”,选择“create new parameter”-创建一个新的参数
③给参数起个名字,最好见文知意,单击“OK”
④给变量添加更多的参数值(若直接引用提前准备好的文件,则文件必须是dat格式,且最后留一行空行)
⑤参数化 登录信息 密码(password),同样的步骤
四、检查点
相当于jmeter中的断言,主要是检查服务器压力过大时,是否可以准确的返回预期结果
①确定检查点,查询航班时有“Find Flight”唯一字段,可作为检查点
②添加“web_reg_find("")”函数,确定检查点
五、回放设置
1、Run Logic-运行逻辑
2、Think Time-思考时间
3、Log-日志
4、Pacing-步长
脚本执行一次后间隔多长时间开始下一次执行脚本
5、其余暂可设置默认
六、回放脚本-日志检查
1、检查设置的登录事务
登录事务成功通过---“pass”
2、检查集合点
集合点设置成功,后续场景压测时在Controller中设置集合政策(后续讲解)
3、检查参数化
已经成功切登录信息参数化的最后一个值
4、文本检查点
成功找到该文本检查点
七、Controller-场景设置与压测脚本
脚本回放无误后,可打开Controller
下一章节,Controller的Design与Run