LoadRunner-Vugen脚本使用教程

news2024/9/24 15:26:59

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

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/1937933.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

数字通云平台 智慧政务OA PayslipUser SQL注入漏洞复现

0x01 产品简介 数字通云平台智慧政务OA产品是基于云计算、大数据、人工智能等先进技术,为政府部门量身定制的智能化办公系统。该系统旨在提高政府部门的办公效率、协同能力和信息资源共享水平,推动电子政务向更高层次发展。 0x02 漏洞概述 数字通云平台 智慧政务OA Paysli…

pytorch学习(六)transforms使用

1.Transforms可以对训练图像进行预处理,以提高模型的稳定性,提高泛化能力。其中包含: 中心裁剪、数据标准化、缩放、裁剪、旋转、仿射、反转、填充、噪声添加、灰度变换、线性变换、亮度饱和度以及对比度变换等。 所处理的图像用tensorboard…

【iOS】APP仿写——网易云音乐

网易云音乐 启动页发现定时器控制轮播图UIButtonConfiguration 发现换头像 我的总结 启动页 这里我的启动页是使用Xcode自带的启动功能,将图片放置在LaunchScreen中即可。这里也可以通过定时器控制,来实现启动的效果 效果图: 这里放一篇大…

基于视觉工具箱和背景差法的行人检测,行走轨迹跟踪,人员行走习惯统计matlab仿真

目录 1.算法运行效果图预览 2.算法运行软件版本 3.部分核心程序 4.算法理论概述 5.算法完整程序工程 1.算法运行效果图预览 (完整程序运行后无水印) 在三维图中,幅度越大,则表示人员更习惯的行走路线。 2.算法运行软件版本 matlab2022a 3.部分核…

【Nacos】Nacos服务注册与发现 心跳检测机制源码解析

在前两篇文章,介绍了springboot的自动配置原理,而nacos的服务注册就依赖自动配置原理。 Nacos Nacos核心功能点 服务注册 :Nacos Client会通过发送REST请求的方式向Nacos Server注册自己的服务,提供自身的元数据,比如ip地址、端…

【C语言】深入解析希尔排序

文章目录 什么是希尔排序?希尔排序的基本实现代码解释希尔排序的优化希尔排序的性能分析希尔排序的实际应用结论 在C语言编程中,希尔排序是一种高效的排序算法,是插入排序的一种更高效的改进版本。它通过比较相距一定间隔的元素来进行排序&am…

JRT报告打印设计

检验报告单打印一直是个难点问题,JRT开发时候重点考虑了简化检验报告打印,首先采用脚本化方便快速修改报告。然后打印基础解决难点问题,基于JRT打印就可以简化到本文代码的水平,维护方便,结构清晰,上线修改…

【1】Spring Cloud 工程搭建

🎥 个人主页:Dikz12🔥个人专栏:Spring学习之路📕格言:吾愚多不敏,而愿加学欢迎大家👍点赞✍评论⭐收藏 目录 1. 父子工程创建 1.1 创建父工程 1.2 创建子项目 重点关注Spring C…

头发稀疏治疗笔记

1. 前言 今天去中南医院看了一下“头发稀疏”的病症; 2. 头皮检测 2.1 毛发光镜检查 2.2 皮肤镜影像

root的安卓12系统上,如何使apk获得root或者高级别的系统权限?

🏆本文收录于《CSDN问答解答》专栏,主要记录项目实战过程中的Bug之前因后果及提供真实有效的解决方案,希望能够助你一臂之力,帮你早日登顶实现财富自由🚀;同时,欢迎大家关注&&收藏&…

JVM--经典的垃圾收集器

1. 垃圾收集器的概念 定义 ; 如果说收集算法是内存回收的方法论,那垃圾收集器就是内存回收的实践者。《Java虚拟机规 范》中对垃圾收集器应该如何实现并没有做出任何规定,因此不同的厂商、不同版本的虚拟机所包含 的垃圾收集器都可能会有很大差别…

Linux journalctl日志太长,如何倒序查看journalctl --reverse,journalctl -xeu

文章目录 需求实验方法一方法二 需求 Linux journalctl日志太长,如何倒序查看 我们通常关心的是最近的日志,但是每次打开日志都是按时间先后顺序显示的,如何倒序查看,请看下面: 实验 方法一 journalctl 命令默认按…

uniapp封装请求拦截器,封装请求拦截和响应拦截的方法

首先我们先看一下uni官方给开发者提供的uni.request用来网络请求的api 1 2 3 4 5 6 7 8 9 uni.request({ url: , method: GET, data: {}, header: {}, success: res > {}, fail: () > {}, complete: () > {} }); 可以看到我们每次请求数据的时候都需…

两种调用方法可以让Contact form 7表单在任意地方显示

Contact form 7是wordpress建站过程中最常用到的插件之一,不过,在Contact form 7调用的时候,有些新手还是搞不太清楚它的调用方法。下面简站wordpress小编,就把常用的两种调用方法,分享给大家: Contact fo…

Open3D 非线性最小二乘法拟合空间球

目录 一、概述 1.1原理 1.2实现步骤 二、代码实现 2.1关键代码 2.1.1定义残差函数 2.1.2拟合球面 2.2完整代码 三、实现效果 3.1原始点云 3.2拟合后点云 3.3结果数据 前期试读,后续会将博客加入下列链接的专栏,欢迎订阅 Open3D点云算法与点…

题解|2023暑期杭电多校02

【原文链接】 (补发)题解|2023暑期杭电多校02 1002.Binary Number 字符串、贪心 题目大意 给定一段长度为 n n n的01串,首位保证为1 任选定其中任意长的一段并将其反转 必须执行以上操作 k k k次,求操作后得到的01串表示的二进…

JAVA.2.运算符

目录 1.算术运算符 小数有可能会不精确,整数除以整数得整数 例子 package demo1;public class Hello {public static void main(String[] args) {System.out.println(12);System.out.println(1-2);System.out.println(5/2);System.out.println(5.0/2);System.out.…

代码随想录移除元素二刷

代码随想录移除元素二刷 leetcode 27 这道题思路的话可以这样去理解,用两个指针,一个慢指针,一个快指针。先让快指针往前面去探路,也就是去遍历数组,遇到不为val的值再去把该值赋值给nums[slow],slow指针1…

3.1、matlab双目相机标定实验

1、双目相机标定原理及流程 双目相机标定是将双目相机系统的内外参数计算出来,从而实现双目视觉中的立体测量和深度感知。标定的目的是确定各个摄像头的内部参数(如焦距、主点、畸变等)和外部参数(如相机位置、朝向等&#xff09…

uni-app 影视类小程序开发从零到一 | 开源项目分享

引言 在数字娱乐时代,移动设备已成为我们生活中不可或缺的一部分,尤其是对于电影爱好者而言,随时随地享受精彩影片成为一种日常需求。爱影家,一款基于 uni-app 开发的影视类小程序,正是为此而生。它不仅提供了丰富的影…