Loadrunner结合Fiddler实现脚本的录制

news/2024/5/16 12:42:41/文章来源:https://blog.csdn.net/nhb687095/article/details/131785769

Loadrunner一直被业内认为是最好用的性能测试工具,行业大哥大, 但是用过Loadrunner的朋友都知道,工具功能的确牛,但实际使用过程中总会有一些困扰新手的问题,无法录制脚本, 如遇到Loadrunner不支持的IE版本、对Chrome、firefox的支持不好、移动客户端APP应用脚本录制等。

Loadrunner默认采用的是端口映射代理的方式进行录制,但是该方案存在操作复杂和无法实时查看录制情况的问题,基于Loadrunner 12的新特性,我们可以通过Fiddler抓包工具抓取报文,然后再通过LR牛叉的解析功能,转化为LR的脚本,然后设计场景进行性能测试。

一、案例介绍

我们采用webtours飞机订票系统作为被测系统,fiddler作为抓包工具,loadrunner作为性能测试工具。

被测系统:http://127.0.0.1:1080/WebTours/index.htm

fiddler:V5.0版本,可以更新到最新版本

Loadruner:12.55(12.0版本以上)

二、Fiddler操作

Fiddler工具是一个HTTP协议的调试代理工具,能够记录所有的HTTP信息并可以进行调试、断点和报文编辑与重发。该工具免费且非常小巧,自动代理,启动即可(可以在option选项中进行设置)
1、因为fiddler自动代理,启动就打开,会抓取通过网卡的所有http报文,如果想抓取https的报文需要进行设置。

2、我们希望只抓取我们被测系统的相关报文,其他的不要抓取,需要进行过滤设置在这里插入图片描述

3、设置过滤之后,在浏览器中进行如下操作

打开chrome浏览器,输入地址:http://127.0.0.1:1080/WebTours/index.htm
输入用户名及密码:jojo,bean
登录成功之后,点击退出按钮
查看fiddler录制脚本

在这里插入图片描述

4、导出报文

选择上图中的所有报文,鼠标右键->save->Selected sessions->in ArchiveZip

弹框中选择保存为:webtours.saz

三、Loadrunner操作

Loadruner 12.00 或以上的版本, 支持saz文件(Fiddler生成)直接转化为vugen脚本,也支持pcap和lrcap文件(分别由报文工具wireshark、tcpdump生成)。
saz文件转化为vugen脚本有两种方式:

1、选择saz文件->右键选中“Create VuGen Script”,直接生成脚本

在这里插入图片描述

2、打开Loadrunner的Vuser Generator工具

Vuser Generator:File->Open->Script/Solution,弹出的打开窗口,选择webtours.saz文件

3、生成脚本

如果报文较多,需要等待一段时间后生成一个与saz文件同名的测试脚本, 生成脚本过程中会弹出一些证书窗口,点确定即可。

转换完成脚本之后,需要将响应的证书删除,确定即可。

 

4、对脚本进行必要的开发

一般录制的脚本或者使用抓包转化的脚本都需要进行二次的开发,才能用于跑性能测试场景。主要包括的内容:

事务
检查点
集合点
思考时间
参数化
关联等
本案例中必要添加的内容有关联和检查点。

5、添加关联

点击工具栏的“Design Studio”按钮,实现关联的设置

检测脚本中会出现两处变化:

6、脚本中添加检查点

采用LR自带的文本检测点实现对请求结果的检查,在脚本中添加检查点方法。

检查回放日志,如果显示下面的检查点信息,说明我们的脚本,不仅语法上没有问题啦,逻辑上也是正确的。

在这里插入图片描述

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

如若内容造成侵权/违法违规/事实不符,请联系dt猫网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

2023年 大二,我拿到了 3 家大厂 offer,为什么我要安利你去实习?

关于 2023年 大二,我拿到了 3 家大厂 offer 这件事 2023年,在大二那年寒假的时候,提前自学完,觉得自己知识储备差不多了,开始投递软件开发实习,刚开始的时候真的是屡遭打击,首先因为本身是双非二…

如何通过边缘智能网关实现暴雨灾害监测预警

随着台风季来临,暴雨灾害也进入到频发阶段,给村镇和城市居民都造成诸多人身和财产损失。针对南方台风季的水灾防治,物联网技术派上大用场,本篇就基于边缘智能网关的数采方案,简单介绍对暴雨导致的洪涝、内涝的监测和预…

2023Testing Expo| 怿星科技展品抢先看(第一弹)

8月9日-11日,2023汽车测试及质量监控博览会将于上海世博展览馆1号馆举行,本次展会将展示测试和验证技术在整车、零部件和系统开发领域中的新发展、新产品和新解决方案。怿星科技将携最新的ETH测试、智驾测试、PPS测试等方案亮相测试展,届时欢…

【文末送书 - 数据分析之pandas篇④】- DataFrame数据合并

向阳花花花花 - 个人主页 迄今所有人生都大写着失败,但并不妨碍我继续向前 Python 数据分析专栏 正在火热更新中 🔥 文章目录 一、concat二、append三、merge3.1 没有属性相同时3.2 只有一个属性相同时1.一对一合并2.一对多合并3.多对多合并 3.3 有多个…

品牌营销策略:如何有效打造品牌知名度与口碑?

品牌营销策略是企业在市场竞争中脱颖而出的重要手段,它能够帮助企业树立品牌形象,提升品牌知名度,增强品牌影响力,从而获得更多的市场份额和利润。那么,如何制定一套有效的品牌营销策略呢?以下是一秒推小编…

Spring【AOP】

AOP-面向切面编程 AOP&#xff1a;面向切面编程&#xff0c;通过预编译方式和运行期动态代理实现程序功能的统一维护的一种技术。 SpringAop中&#xff0c;通过Advice定义横切逻辑&#xff0c;并支持5种类型的Advice&#xff1a; 导入依赖 <dependency><groupId>…

webpack打包之 copy-webpack-plugin

copy-webpack-plugin 打包复制文件插件。 1、什么时候要使用&#xff1f; 在离线应用中&#xff0c;前端所有文件都需在在本地&#xff0c;有些文件&#xff08;比如iconFont以及一些静态img)需要转为离线文件&#xff0c;这些文件可以直接引用更方便些&#xff0c;这就需要在打…

Redis学习(三)持久化机制、分布式缓存、多级缓存、Redis实战经验

文章目录 分布式缓存Redis持久化RDB持久化AOF持久化 Redis主从Redis数据同步原理全量同步增量同步 Redis哨兵哨兵的作用和原理sentinel&#xff08;哨兵&#xff09;的三个作用是什么&#xff1f;sentinel如何判断一个Redis实例是否健康&#xff1f;master出现故障后&#xff0…

QT之智能指针

如果没有智能指针&#xff0c;程序员必须保证new对象能在正确的时机delete&#xff0c;四处编写异常捕获代码以释放资源&#xff0c;而智能指针则可以在退出作用域时(不管是正常流程离开或是因异常离开)总调用delete来析构在堆上动态分配的对象。 来看看一个野指针例子 程序将会…

vue的生命周期和执行顺序

1&#xff0c;Vue 生命周期都有哪些&#xff1f; 序号生命周期描述1beforecreate创建前vue实例初始化阶段&#xff0c;不可以访问data,methods&#xff1b; 此时打印出的this是undefined&#xff1b;2created创建后vue实例初始化完成&#xff0c;可以访问data&#xff0c;meth…

truffle 进行智能合约测试

0字 本方法使用了可视化软件Ganache 前两步与不使用可视化工具的步骤是一样的&#xff08;有道云笔记&#xff09;&#xff0c;到第三步的时候需要注意&#xff1a; 在truffle插件下找到networks目录&#xff0c;提前打开Ganache软件 在Ganache中选择连接或者新建&#xff0…

Django实现接口自动化平台(十二)自定义函数模块DebugTalks 序列化器及视图【持续更新中】

上一章&#xff1a; Django实现接口自动化平台&#xff08;十一&#xff09;项目模块Projects序列化器及视图【持续更新中】_做测试的喵酱的博客-CSDN博客 本章是项目的一个分解&#xff0c;查看本章内容时&#xff0c;要结合整体项目代码来看&#xff1a; python django vue…

Redis : zmalloc.h:50:31: 致命错误:jemalloc/jemalloc.h:没有那个文件或目录

In file included from adlist.c:34:0: zmalloc.h:50:31: 致命错误&#xff1a;jemalloc/jemalloc.h&#xff1a;没有那个文件或目录 #include <jemalloc/jemalloc.h> 解决 : 如上图使用命令 make MALLOClibc

视频卡通化技术路线

神经风格迁移&#xff1a;用深度神经网络生成风格化图像&#xff0c;通过捕获到的图像中的内容表征对输出图像做约束&#xff0c;就是输入图像和目标图像通过vgg提取的特征做约束。 GAN图像翻译&#xff1a;Image-to-image translation&#xff0c;主要基于conditional GAN&am…

Redis分布式锁的演变历程

什么时候用分布式锁 当并发去读写一个【共享资源】的时候&#xff0c;我们为了保证数据的正确&#xff0c;需要控制同一时刻只有一个线程访问。 分布式锁就是用来控制同一时刻&#xff0c;只有一个 JVM 进程中的一个线程可以访问被保护的资源。 分布式锁入门 分布式锁应该满足…

【C++修炼之路】list 模拟实现

&#x1f451;作者主页&#xff1a;安 度 因 &#x1f3e0;学习社区&#xff1a;StackFrame &#x1f4d6;专栏链接&#xff1a;C修炼之路 文章目录 一、读源码二、成员三、默认成员函数1、构造2、析构3、拷贝构造4、赋值重载 四、迭代器五、其他接口 如果无聊的话&#xff0c;…

RocketMQ环境搭建

环境搭建 环境准备 下载地址: https://downloads.apache.org/rocketmq/4.9.5/安装 上传至服务器 mkdir /usr/soft #上传至此目录/usr/softmkdir /usr/soft 解压 cd /usr/soft unzip rocketmq-all-4.9.5-bin-release.zip移动 mkdir /usr/local/rocketmq cd /usr/soft mv r…

Kubernetes - kubeadm部署

Kubernetes - kubeadm部署 1 环境准备1.1 在各个节点上配置主机名&#xff0c;并配置 Hosts 文件1.2 关闭防护墙&#xff0c;禁用selinux&#xff0c;关闭swap1.3 配置免密登录1.4 配置内核参数1.5 配置br_netfilter 2. 安装K8s2.1 安装docker(各节点)2.2 安装K8s组件(各节点)2…

安达发|如何选择更适合我们的APS高级排程软件

如何选择aps高级排程公司更适合我们?在选购aps高级排程的时候&#xff0c;一些朋友由于不清楚其中的选购技巧&#xff0c;许多时候会掉入些许选择误区&#xff0c;导致我们买不了合适我们选择的aps高级排程。因此选择适合我们的aps高级排程就变得十分重要&#xff0c;唯有明白…

使用typora+PicGo+Gitee简单实现图片上传功能

本文通过配置PicGoGitee来实现typora图片上传功能&#xff0c;系统是window 注意下载的清单有&#xff1a;PicGo&#xff0c;node.js&#xff0c;配置有&#xff1a;PicGo&#xff0c;node.js&#xff0c;gitee&#xff0c;typora 看着复杂实际上并不难&#xff0c;只是繁琐&am…