LoadRunner-Vugen脚本使用教程

1 使用VuGen录制脚本

1.1新建脚本和解决方案

(1)打开VuGen,单击【File】→【New Script and Solution】创建项目,弹出Create a New Script对话框。

左侧栏是协议分类,每项含义如下所示:

●  Single Protocol:单协议。

●  Multiple Protocols:多协议。

●  Mobile and lo T:移动与物联网协议。

●  Popular:流行的协议。

●  Recent:最近使用的协议。 

协议的选择要与所测试的项目保持一致,由于LoadRunner自带的项目使用的是单协议Web-HTTP/HTML,因此本次创建脚本选择【Single Protocol】→【Web-HTTP/HTML】。测试人员在选择协议时,如果不清楚项目使用的协议,可以询问开发人员确认项目使用的协议。 

 

(2)协议页面设置完成后,单击【Create】按钮,项目创建成功。 

 上图中左侧栏是项目列表,其中最重要的是Actions文件部分,VuGen录制的脚本就存储在Actions文件夹下。 Actions文件夹包含三个文件:vuser_init、Action、vuser_end。

●  vuser_init:该文件中定义了一个vuser_init()函数,一般测试前的初始化操作会录制到该函数中,如打开网站、启动客户端之类的操作。

 ●  vuser_end:该文件中定义了一个vuser_end()函数,一般测试结束之后的回收工作会录制到该函数中,如退出网站、关闭客户端之类的操作。

●  Action:该文件中定义了一个Action()函数,测试中的操作过程都会录制到该函数中。

录制完成的脚本如果进行多次迭代执行,那么仅重复执行脚本的Action部分,vuser_init与vuser_end部分只执行一次,不会重复执行。 在本次测试中,为了节省篇幅我们将整个订票过程都录制到Action()函数中。 

1.2录制选项配置 

 在录制之前需要先进行一些配置,单击红色的录制按钮,弹出Start Recording-[WebTours]对话框。点击录制或是隔壁的按钮都是可以进行配置的。

 各配置项含义如下:

(1)Record into action:用于设置脚本的存储位置,它有vuser_init、Action、vuser_end三个值。

(2)Record:用于选择录制类型,它有四个选项:

●  Web Browser:浏览器方式。

●  Windows Application:Windows应用程序方式。

●  Remote Application via LoadRunner Proxy:远程程序代理方式。

●  Captured Traffic File Analysis:数据流文件方式。

 (3)Application:用于选择浏览器。

(4)URL address:用于选择要测试的Web项目的URL地址。

(5)Start recording:用于选择录制方式。Immediately表示立即录制,单击【Start Recording】按钮后就开始录制;In delayed mode表示延迟录制,第一次单击【Start Recording】按钮后会先在浏览器中打开URL地址,再次单击该按钮才会录制操作脚本。暂时先不用点击,因为配置完之后我们还需要启动一个服务才可以。

(6)Working directory:LoadRunner的工作目录,可以选择脚本录制的目录。

 配置完上述几个选项之后,并不能立即开始录制,还需要配置一些其他选项。单击上图左下角的“Recording Options”链接,弹出Recording Options对话框。

注意:对于常规浏览器的录制,建议不要使用基于URL的脚本模式,因为该模式将所有的操作都录制为web_url步骤,而不是web_link、web_image等分离的元素,它更容易产生关联问题。但是,对于录制小程序或非浏览器应用程序的页面,URL-based script最为理想。 

本次测试为了使操作步骤直观清晰选择HTML-based,单击【HTML Advanced…】按钮,弹出Advanced HTML对话框。

设置Script type(脚本类型)和Non HTML-generated elements(非HMTL元素的生成策略)。 Script type有两个选项:

●  A script describing user actions(web_link,web_submit_form):注重用户操作,记录用户单击的节点。

●  A script containing explicit URLs only:脚本只包含URL步骤。

Non HTML-generated elements有三个选项:

●  Record within the current script step:脚本文件在当前步骤生效。

●  Record in separate steps and use concurrent groups:脚本文件在当前组内生效。

●  Do not record:不记录脚本。

按照上图进行勾选,之后单击【OK】按钮完成脚本录制方式设置

(3)单击【HTTP Properties】→【Advanced】选项将编码设置为UTF-8。

设置完成之后单击【OK】按钮返回到协议选择页面,此时就完成了录制前的所有选项设置。 

1.3启动web服务 

在我们的安装目录下找到【WebTours】->【StartServer】,右键点击启动,在这里可能会出现闪退的问题,无论是运用管理员身份打开还是直接双击,都会直接闪退,查询了一下发现可能存在端口占用的问题,但是右键点击打开又确实不会闪退了。启动之后就会出现一个命令行。

这样子是报错了。

问题1:LoadRunner12启动webTour程序报错httpd.exe: Could not reliably determine the server’s fully qualified domain name, using 192.168.x.x for ServerName

参考这个链接:LoadRunner12启动webTour程序报错“httpd.exe: Could not reliably determine the server‘s fully…“_启动webtours时提示could not reliably determine the serv-CSDN博客 

解决后这样子就没问题了: 

问题2:LoadRunner 录制脚本时提示无Internet访问/加载慢

参考链接:LoadRunner 录制脚本时提示无Internet访问/加载慢,如何解决?_loadrunner无internet访问-CSDN博客

问题3:Loadrunner回放脚本时报错Action.c(41): Error -27979: Requested form not found [MsgId: MERR-27979] 

1.4脚本录制启动 

 录制选项设置完毕,在项目页面单击【Start Recording】按钮开始录制脚本。录制开始,VuGen会先弹出录制工具栏。

 

弹出录制工具栏之后,还需要将web浏览器选择为软件自带的firefox浏览器,选择路径如下,非常重要!!!否则会出现录制脚本结束之后显示仍然为空。比如点击开始录制之后不论点击什么操作,录制步骤那里一直不动显示为3这样。就会导致脚本录制失败。url地址如下:http://127.0.0.1:1080/WebTours/

 

修改完成之后就可以开始录制操作了。VuGen会调用FireFox浏览器打开WebTours网站,读者输入默认的用户名(yoyo)和密码(bean)进行登录,预订机票之后退出,然后单击录制工具栏中的停止按钮结束录制。 

 

然后点击结束录制, 录制完成之后会生成一个脚本,用户的点击操作不同,生成的脚本也不同。

 录制完成的脚本可以进行回放,单击工具栏中的运行按钮 可以让VuGen自动执行脚本。本次录制脚本执行结果如下图。

 

本次内容有错误在44行,内容为表单为空。 同时我还发现咱们这时候并没有生成录制报告也不知道为什么,希望有大佬看到之后进行指正交流问题出在哪里。如果是没问题的话,执行的回放结果如下图所示。

1.5小结

        在使用LoadRunner进行性能测试时,虽然可以使用VuGen自动生成脚本,但它会包含很多“杂质”,有些元素并不是用户需要的,例如在预订机票时,如果网页加载缓慢,用户可能会多次点击某个按钮,这些重复的操作都会被录制到脚本中,这就造成了脚本的冗余,因此在创建脚本时,测试人员最好手动编写,这样可以保证脚本的准确精炼。 

相关推荐

  1. Shell脚本教程

    2024-07-20 22:46:04       29 阅读

最近更新

  1. docker php8.1+nginx base 镜像 dockerfile 配置

    2024-07-20 22:46:04       52 阅读
  2. Could not load dynamic library ‘cudart64_100.dll‘

    2024-07-20 22:46:04       54 阅读
  3. 在Django里面运行非项目文件

    2024-07-20 22:46:04       45 阅读
  4. Python语言-面向对象

    2024-07-20 22:46:04       55 阅读

热门阅读

  1. 力扣第二十二题——括号生成

    2024-07-20 22:46:04       18 阅读
  2. WebKit简介及工作流程

    2024-07-20 22:46:04       15 阅读
  3. 编程中的智慧之设计模式一

    2024-07-20 22:46:04       16 阅读
  4. NVM配置

    NVM配置

    2024-07-20 22:46:04      16 阅读
  5. 获取磁盘剩余容量-----c++

    2024-07-20 22:46:04       14 阅读
  6. springboot3.2 RedisCacheManager配置

    2024-07-20 22:46:04       16 阅读
  7. springSecurity学习之springSecurity简介

    2024-07-20 22:46:04       20 阅读
  8. 分布式锁-redisson锁重试和WatchDog机制

    2024-07-20 22:46:04       14 阅读