信赖源于专业脚本的增强本课要解决的问题•为什么要对录制好的脚本进行增强?•脚本增强的方法有哪些?•脚本增强起到什么作用?•如何对脚本进行增强?为什么对脚本进行加强?•脚本录制好,并不代表这些脚本很接近用户的真实使用情况,为了使这些脚本更接近用户的真实使用情况,需要对这些脚本进行加强.脚本增强的方法有哪些?•脚本增强的方法插入事务插入集合点插入注释参数化检查点关联插入事务•事务的目的是用来度量服务器响应时间。响应时间是用户请求发出和服务器返回之间的时间差•一个完整的事务由事务开始、事务结束以及一个或多个业务操作构成•事务必须是成对出现的,即一个事务有事务的开始,必然也有事务结束•插入事务方便我们以后分析业务操作所消耗的响应时间插入事务插入事务插入事务的两种方法:脚本录制中插入和录制后插入事务的几种状态LR_AUTO、LR_PASS、LR_FAIL、LR_STOPa)LR_AUTO:事物的状态被自动设置,如果事务执行成功,状态设置为PASS,如果执行失败,状态设置FAIL,如果由于异常中断,状态被设置成STOP。b)LR_PASS:事务如果执行成功,代码返回的状态是PASS。c)LR_FAIL:事务执行成功与失败,代码返回的状态都是FAIL。d)LR_STOP:事务如果由于异常中断,代码返回的状态是STOP。插入事务•对录制脚本插入一个事务•Script视图与Tree视图插入事务•在Replay.log查看运行结果Duration是事务的响应时间,WastedTime是指事务中应该扣除的由于其他原因导致的时间浪费(比如脚本自身运行的时间)WastedTime是指事务中应该扣除的由于其他原因导致的时间浪费插入集合点•插入集合点的作用插入集合点是为了衡量在加重负载的情况下服务器的性能情况。在测试计划中,可能会要求系统能够承受1000人同时提交数据,在LoadRunner中可以通过在提交数据操作前面加入集合点,这样当虚拟用户运行到提交数据的集合点时,LoadRunner就会检查同时有多少用户运行到集合点,如果不到1000人,LoadRunner就会命令已经到集合点的用户在此等待,当在集合点等待的用户达到1000人时,LoadRunner命令1000人同时去提交数据,从而达到测试计划中的需求。•在脚本中设置了“集合点”后,当运行场景时可以对集合点进行设置,可以设置当百分之多少用户到达时,系统开始执行以下操作•集合点只能插入在Action部分的脚本中,不能插入vuser_init和vuser_end两部分的脚本中。插入集合点•插入集合点可以在录制过程中,也可以在录制过程后•在录制过程中插入集合点点击录制条上的•在录制完成后插入集合点点击插入注释•注释的作用,是方便脚本的可读性。•在录制的过程中加入注释•在录制后的脚本中加入注释参数化•什么是参数化?所谓脚本参数化,就是针对脚本的某些常量,使用参数来取代。•那么为什么要进行参数化呢?为了减少脚本的大小和脚本数量。如果不进行参数化,为了达到目标可能需要拷贝并修改很多个脚本。使业务更接近真实的客户业务。创建参数•对录制好飞机订票脚本的登录名进行参数化。•设置参数名为name创建参数•当参数化结束后,脚本保存的根目录下会多出一个参数化的文件对参数进行设置•点击工具条上的•或者按CTRL+L增加多行数据,在运行设置处设置迭代次数检查点•插入检查点的作用就是检查Web服务器返回的网页是否正确。在每次脚本运行到此检查点时,自动检查该处的网页是否正确。可以省去执行结束后人工检查的步骤和时间,进而加快了测试进度。•插入检查点类型与函数文本检查点,对文本进行检查,对应的函数为web_find。图片检查点,对图片进行检查,对应的函数为web_image_check。文本检查点的设置•启用检查选项由于检查功能会消耗一定的资源,因此LoadRunner默认关闭了对文本以及图像的检查,所以要开启检查功能,否则在回放过程中不会对设置的检查点进行检查。插入文本检查点•录制好脚本,进入Tree模式。•选择检查点类型和插入函数文件检查点设置•输入要检查的文本1.Searchfor要检查的字符串2.Rightof:要检查字符右边的内容3.Leftof:要检查字符左边的内容文本检查点设置•设置完后,在Tree模式与脚本模式中会看到分别增加一个图标与函数文本检查点设置•脚本回放,会在回放日志中看到检查点的结果图片检查点•对flights.gif图片的检查选insertafter选ImageCheck图片检查点这个ALT与SRC在日志中可以查询到1、输入该图片的alt属性,也就是提示信息。2、输入该图片的SRC属性,也就是图片的相对路径图片检查点•添加完后,可以在Tree与脚本中看到回放的时候,可以在回放日志中看到运行结果关联•什么是关联?关联就是把脚本中某些写死的数据,转换成取自服务器所送的、动态的、每次都不一样的数据。关联分为手动关联与自动关联。•关联的原理自动关联•自动关联的原理对同一个脚本录制和运行时,对服务器返回的内容进行比较,如果查找到返回的内容有变化,就提示是否对这些变化的内容生成关联。•自动关联的步骤把关联开关与运行日志打开设置关联的步骤•录制WebTours网站一个登录的过程,选择录制模式的高级选项,如下图配置录制出来的脚本是web_submit_data()函数,函数中有userSession设置关联的步骤•回放录制的脚本后,扫描需要关联的地方自动扫描需要关联的地方设置关联的步骤•Correlate按钮后,生成关联在Tree与脚本模式下可以看到上机练习•用HTML与URL分别录制机票预定的脚本•通过设置runtimesetting对脚本进行回放•分别在录制过程中和录制后插入集合点•分别在录制过程中和录制后插入注释•练习插入事务,检查点,参数化,关联信赖源于专业