引言Vuser发生器(VisualUserGenerator,简称为VuGen)主要通过捕获客户端向服务器发送的HTTP请求,将这些请求录制成脚本,在回放时将捕获的HTTP请求再次发送,以达到模拟客户的行为的目的,所以Vuser主要是用来捕获最终用户业务流程和创建自动化测试脚本,即生成测试脚本。VuGen是录制测试脚本、编辑与完善测试脚本的一个平台,支持C语言语法。
主要包括以下内容:脚本录制
Recording Options设置
Run-Time Settings设置脚本完善脚本录制
启动VisualUserGenerator,创建一个新的脚本,开始录制脚本,在录制脚本过程中,VuGen会自动捕获操作过程中客户端与服务器端进行通信的所有数据。这里涉及的关键点是如何选择录制协议。
脚本开发主要包括四大步骤:计划、录制脚本、脚本增强和单机调试脚本,如图所示。
如何选择协议
在创建一个新的脚本时,首先会弹出一个对话框,在该对话框中选择录制时需要的协议,这步非常重要,选择的协议将直接影响到录制后的脚本是否理想,如何选择录制协议是录制前必须要解决的问题。
各种协议和相关头文件的对应关系如图所示。
协议头文件AJAX(Click&Script)web_ajax.hCitrixctrxfuncs.hCOM/DCOMlrc.hDatabaselrd.hFTPmic_ftp.hGeneral C functionlrun.hIMAPmic_imap.hLDAPmic_midap.hMAPImic_mapi.hOracle NCAorafuncs.hPOP3mic_pop3.hROPlrrdp.hSAPGUIas_sapgui.hSAP(Click&Script)sap_api.hSiebellrdsiebel.hSMTPmic_smtp.hTerminal Emulatorlrrte.hWAPas_wap.hWeb(HTMLHTTP)as_wab.hWeb(Click&Script)web_api.hWeb Serviceswssoap.hWindows Socketslrs.h
选择协议的常用方法主要有以下几种:
1.最简单的方法就是向开发工程师确认数据通信所采用的协议,因为开发工程师最清楚应用程序采用的是何种通信协议。
2.没有开发工程师支持时,可以通过概要或详细设计手册获知所使用的协议。
3.使用协议分析工具捕获通信时的数据包并进行分析,然后确定被测对象所使用的协议。在使用协议分析工具分析协议过程中一定要摒除底层协议,不要被底层协议所迷惑。
4.根据以往测试经验来判断被测试对象采用的协议,这种方法具有猜测性,有时候不一定准确。
在LoadRunner新的版本中有一个协议分析的工具(ProtocolAdvisor),通过该工具可以分析当前系统所使用的协议。协议分析工具的使用步骤如下:
1.在【WelcometotheVirtualUserGenerator】界面单击【ProtocolAdvisor】按钮,如图所示。
2.弹出【ProtocolAdvisor】对话框,如图所示。
Applicationtype:选择应用程序的类型,被测试的应用程序类型主要包括两类:InternetApplictions和Win32Applications,也即通常说的B/S和C/S框架的两类应用程序。
Programtoanalyze:分析的程序,如果选择的应用程序类型为InternetApplications那么,该选项为MicrosoftInternetExplorer,即IE浏览器,因为LoadRunner在录制时默认启动IE浏览器进行录制;如果选择的应用程序类型为Win32Applications,那么该选项为需要测试的应用程序的路径。
URLAddress:即需要分析的网页地址;
Workingdirectory:工作目录,默认的为LoadRunner所在路径的bin目录。
3.设置待分析程序的路径或URL地址,单击【OK】按钮,即开始分析应用程序,通常分析一个简单的业务即可停止分析。
4.单击浮动框中的【StopAnalyzing】按钮,停止分析应用程序,并产生分析后的结果。
LoadRunner提供了多种协议,具体的协议分类见表。
1.单协议脚本:创建单协议Vuser脚本,在对话框中选择录制时需要的协议,如图所示。创建新脚本时,会弹出一个对话框,LoadRunner提供三种选择协议的方式:单协议脚本、多协议脚本和最近使用过的协议。
2.多协议脚本:创建多协议Vuser脚本。在AvailableProtocols中选择一个或多个协议,点击右箭头,将其移入到SelectedProtocols部分中,同样,在SelectedProtocols中选择一个或多个协议,点击左箭头可以移除选中的协议,如图所示。
3.最近使用过的协议:从最近录制脚本的协议列表中,选择一种协议进行录制,如图所示
开始录制脚本
协议选择好后可以开始录制脚本。这里以Web(HTTP/HTML)协议为例进行录制。
VuGen录制浏览器主要是通过代理的方式来实现的。开始录