当前位置:朝夕网 » 数码科技 » Loadrunner基础介绍-第二弹-用户录制行为

Loadrunner基础介绍-第二弹-用户录制行为

Applications:指需要录制的对象是一个网路应用(基于浏览器)。6)录制的时候总是提示无法访问服务器不是所有的客户端都能被VuGen加载,这时因为这种客户端存在一定的自我保护功能,这样的客户端基本上就没办法使用VuGen直接录制了,

录制脚本是模拟用户行为的第一步,通过录制用户行为产生的协议从而生成Vuser Script。当我们对函数比较熟悉的时候,可以抛弃录制的过程,而采用手动编写。在大多数情况下,我们会在录制生成的脚本上根据实际需求进一步进行修改,这样效率更高。

1.1录制过程

录制用户行为转化为脚本一般是按照如下步骤进行的。

Loadrunner基础介绍-第二弹-用户录制行为

1.2协议选择

在前面我们知道性能测试是基于协议的,所以首先要选择匹配的协议,如果协议错误将会导致无法录制用户行为。选择过多会导致录制内容的冗余,而选择不足又会导致漏录的情况发生。新建脚本首先需要选择协议类型,在VuGen中分为单协议和多协议两种情况。

1.单协议(New Single Protocol Script)

在单协议情况下,所要录制的对象只使用唯一的协议,如下图:

Loadrunner基础介绍-第二弹-用户录制行为

2.多协议(New Multiple Protocol Script)

在需要录制的对象使用多于一种协议的情况下,应该选择多协议,并且将这些协议都进行添加,否则会因为漏选协议而无法正常回放脚本,如下图:

Loadrunner基础介绍-第二弹-用户录制行为

确定系统使用协议最简单的方式就是询问开发人员,特别是C/S 架构使用的协议可能比较特殊,甚至有可能是自行开发的协议包规范。另一种方法就是通过网络扫描工具拦截数据包,确定协议类型。

1.3录制选项

在选择合适的协议后准备开始录制,而选择不同的协议后弹出的录制窗口和录制选项也不近相同。

这里选择Web(HTTP/HTML)协议(模拟浏览器和Web服务器之间的HTTP协议交互使用HTML作为数据包格式),如下图:

Loadrunner基础介绍-第二弹-用户录制行为

弹出Start Recording窗口,如果没有弹出可以使用Vuser菜单下的Start Recording或Ctrl+R组合键启动录制过程,如下图:

Loadrunner基础介绍-第二弹-用户录制行为

Applications Type

首先需要设置的是Applications type,VuGen中提供了Internet Applications和Win32 Applications两种应用的录制选项。

Internet Applications:指需要录制的对象是一个网路应用(基于浏览器)。

Program to record:指需要录制的程序名,VuGen默认支持的Web客户端是IE,也建议不要使用任何第三方的浏览器来录制,避免出现不兼容。从Loadrunner11版本开始也已经能够很好的兼容IE8甚至是IE9,并且可以支持Firefox作为客户端录制。

URL Address:录制开始所需要访问的URL地址,也就是第一个请求所需要访问的页面。

Working directory:用来指定代码的工作目录。

Win32 Applications是用来支持Win32的标准客户端,如果客户端是自行开发的,可使用该选项,如下图:

Loadrunner基础介绍-第二弹-用户录制行为

Program to record:需要录制的应用程序,我们可以通过后面的按钮将访问的应用程序添加进来。

Program arguments:指程序参数,在某些应用程序后需要添加一些参数才能运行,这里提供的是填写参数的位置。

Recording into Action:录制的内容会被存放在Action中,Action是Vugen提供的一种类似于函数的脚本块,通过将不同的操作存放在不同的Action中实现代码的高内聚低耦合。

这里可以单机New按钮来新建Action。

VuGen默认提供了3个Action:vuser_init、Action、vuser_end。

在Loadrunner中用户的初始化操作应该存放在vuser_init中,用户的结束操作存放在vuser_end中,因为这两个Action在后面的Run Logic默认设置中是处在脚本最先运行和最后运行的位置,并且在负载时只会在开始和结束时被运行一次。而Action用来存放用户的操作,可以当作普通的函数在负载时会被反复运行。

Record the Application startup:单击OK按钮后VuGen会启动我们需要录制的应用,这个选项是指一旦启动了应用后就将开始录制应用收发的协议数据。

为了确保录制出来的脚本简洁、有效,在开始录制前需要对录制选项进行一定的设置。

1.4开始录制

设置好录制选项后,单击OK按钮启动录制。

首先看到的是Recording Bar,如下图

Loadrunner基础介绍-第二弹-用户录制行为

稍后会看待IE或者指定的应用程序启动,当进行操作时Events也会随之变化,说明VuGen录制得到了一些协议交互的内容。

在录制前需要根据需求确定需要录制的用户行为,而录制后需要通过后面的设置来将脚本设置为完全模拟用户行为的Vuser Script。

1.5插入命令

在录制的过程中可以通过Recording Bar添加一些命令。例如,可以切分脚本,将录制的内容放在不同的脚本块中,也可以添加事务的开始点和结束点,还可以添加集合点和注释。

1.6结束录制

当录制结束后,单击Stop按钮或者使用Ctrl+F5组合键停止录制,所有客户端和服务器交互协议会被放在Generation Log内,VuGen随后会对协议交互进行分析,最终生成脚本。

录制完成后,可以在Recording Log中查看相关录制信息,如下图

Loadrunner基础介绍-第二弹-用户录制行为

而录制中的events条数就是Recording Log中的信息行数。

1.7回放验证

脚本生成后可以单击菜单栏中的Run按钮也可以直接按F5键回放脚本。

运行前也可以通过Shift+F5组合键检查脚本的语法规则,对脚本进行编译。

回放中可以在Replay Log日志栏中看到脚本执行的日志信息,当脚本回放完成后,如何验证回放结果,这里可以打开View菜单下的Test Result,如下图,

Loadrunner基础介绍-第二弹-用户录制行为

在这个测试结果报告中,可以得到整个脚本回放的记录,还有相关截图,Passed状态说明脚本运行正常,得到了服务器的反馈。

注意:Passed并不能说明脚本完成了相关操作,只能说明服务器端正确接收到了客户端的请求并且返回了相应的数据,但是并不代表操作在逻辑上是正确的。

1.8录制回放常见问题

1.录制问题

1)录制本机WebTours或录制本地网站无法打开

当使用Vista以后的操作系统时,会出现该问题。这是由于在本地WindowsSystem32driversetchost文件中多了如下内容: ::1 localhost

将其删除后即可恢复正常。

2)录制网页时,浏览器刚打开就自动关闭,或者浏览器无响应

这是由于在IE中打开了第三方插件支持导致的,一般安装了QTP会出现这个问题。只需要打开IE的属性菜单,找到高级选项,将其中的第三方插件支持关闭即可。

同时可以检查IE关闭其保护模式,并且Windows DEP数据执行保护为基本Windows程序和服务。

3)开始录制时浏览器出现错误

这个问题一般是由于系统安装的问题或IE版本不兼容导致的,VuGen最高兼容IE9.0。

4)录制网页操作后没有任何脚本

VuGen录制只支持IE,对于第三方的浏览器不能很好的兼容(Loadrunner11开始支持FireFox的某些版本)。

5)录制本机页面可以打开但没有录制到任何任何Events

在录制时请求的地址为127.0.0.1或Localhost时,偶尔会出现该问题,换成系统真实IP地址即可。

6)录制的时候总是提示无法访问服务器

可以考虑检查一下IE的代理服务器设置。在Loadrunner8中经常出现VuGen中的代理设置自动覆盖IE7的现象。

7)录制的时候有Events但是停止录制没有脚本

可以设置录制选项中的端口映射强制系统对特殊端口使用某种过滤规则进行录制。

8)使用VuGen启动某些应用团建进行录制,应用程序无法启动

不是所有的客户端都能被VuGen加载,这时因为这种客户端存在一定的自我保护功能,这样的客户端基本上就没办法使用VuGen直接录制了,对于这种情况如果了解客户端和服务器端的协议格式,那么可以通过自己编写请求来完成脚本开发。

9)启动VuGen录制就出错

一般这个与系统的数据保护有关系,打开计算机属性中高级,将数据执行保护修改为“仅为基本Windows程序和服务启用DEP”

2.回放错误

在某些情况下,回放脚本会遇到失败的情况,一般导致脚本回放时报的原因无非以下几种:

1)脚本中的数据存在动态部分

例如脚本是访问一个图片,但是再次回放的时候该图片已经在服务器上被删除了,那么脚本回放时自然就会出现错误,提示该对象无法找到。解决方法是修改代码,删除无用的对象,或者通过关联处理动态数据。

2)脚本没有录制到所有的协议请求

当系统使用多种协议时,如果我们选择的录制协议没有全部包含,就会出现漏录请求的情况,而在回放时由于缺乏部分请求的模拟,就会导致后续的请求内容被服务器拒绝,自然就会出现回放失败的情况。解决方法是通过分析确认系统协议,确保所有请求被录制。

3)系统存在问题

从某些角度来说,VuGen是一种基于协议的木马,可能会被部分杀毒软件或防火墙干扰和影响,导致无法正常访问服务器。解决方法是在录制时关闭不必要的防火墙和杀毒软件。

4)脚本中添加了不合适的关联或检查点函数

在录制选项中打开了自动录制关联规则后,录制出来的脚本会自动添加复合规则的关联函数,而如果在回放时关联函数无法捕获到符合规则的目标则会提示错误。解决方法建议在深入了解关联后再启用该功能。对于检查点函数,关闭Fail功能即可。

5)服务器连接错误

服务器无法连接,导致脚本回放失败

一般来说回放错误可以通过日志或者Test Results中的截图定位,当有一定的代码调试能力后,就能轻松解决。

免责声明:本文版权归原作者所有,转载文章仅为传播更多信息之目的,如有侵权行为,请第一时间联系我们修改或删除,多谢。朝夕网 » Loadrunner基础介绍-第二弹-用户录制行为