当前位置: 首页 > news >正文

LoadRunner使用教程

1. LoadRunner简介

LoadRunner是一款广泛使用的性能测试工具

可以对各种应用程序进行性能测试,包括Web应用程序、移动应用程序、企业级应用程序等。它提供了一个综合的性能测试解决方案,包括测试计划设计、脚本录制、测试执行、结果分析和报告生成等功能。

主要有以下几个核心组件:

  1. Virtual User Generator(虚拟用户产生器):用于录制和编辑性能测试脚本。通过模拟用户的行为来捕获用户与应用程序之间的交互操作。

  2. Controller:用于设置测试场景和配置虚拟用户的行为。可以模拟不同的负载模式、并发用户数量和事务执行时间等。

  3. Load Generators:用于模拟实际用户的虚拟用户,并产生负载。可以在多台物理或虚拟机器上分布负载。

  4. Analysis:用于收集和分析测试执行期间的性能数据。提供图表、统计数据和报告,以便深入了解应用程序的性能状况。

2.Virtual User Generator基础使用

1.了解webtours系统

如何启动?

双击

配置

有了ip还需要port才能访问成功,在配置文件中查看port

2.脚本录制

打开VUG 

 如何确定协议?找开发沟通

录制

 开始录制

 有时需要将无关代码删除

3.编译

 

4.运行(回放)

打印日志: 

Virtual User Script started at : 2023/7/21 8:42:35
Starting action vuser_init.
Web Turbo Replay of LoadRunner 12.0.0 for Windows 8; build 2739 (Nov 30 2014 23:13:05)  	[MsgId: MMSG-27143]
Run mode: HTML  	[MsgId: MMSG-26993]
Run-Time Settings file: "C:\Users\陈昌良\Documents\VuGen\Scripts\WebHttpHtml1\\default.cfg"  	[MsgId: MMSG-27141]
Ending action vuser_init.
Running Vuser...
Starting iteration 1.
Maximum number of concurrent connections per server: 6  	[MsgId: MMSG-26989]
Starting action Action.
Action.c(4): web_url("WebTours") started  	[MsgId: MMSG-26355]
Action.c(4): Detected non-resource "http://192.168.1.7:1080/WebTours/header.html" in "http://192.168.1.7:1080/WebTours/"  	[MsgId: MMSG-26574]
Action.c(4): Detected non-resource "http://192.168.1.7:1080/cgi-bin/welcome.pl?signOff=true" in "http://192.168.1.7:1080/WebTours/"  	[MsgId: MMSG-26574]
Action.c(4): Found resource "http://192.168.1.7:1080/WebTours/images/hp_logo.png" in HTML "http://192.168.1.7:1080/WebTours/header.html"  	[MsgId: MMSG-26659]
Action.c(4): Found resource "http://192.168.1.7:1080/WebTours/images/webtours.png" in HTML "http://192.168.1.7:1080/WebTours/header.html"  	[MsgId: MMSG-26659]
Action.c(4): Detected non-resource "http://192.168.1.7:1080/cgi-bin/nav.pl?in=home" in "http://192.168.1.7:1080/cgi-bin/welcome.pl?signOff=true"  	[MsgId: MMSG-26574]
Action.c(4): Detected non-resource "http://192.168.1.7:1080/WebTours/home.html" in "http://192.168.1.7:1080/cgi-bin/welcome.pl?signOff=true"  	[MsgId: MMSG-26574]
Action.c(4): Found resource "http://192.168.1.7:1080/WebTours/images/mer_login.gif" in HTML "http://192.168.1.7:1080/cgi-bin/nav.pl?in=home"  	[MsgId: MMSG-26659]
Action.c(4): web_url("WebTours") was successful, 10080 body bytes, 2371 header bytes, 24 chunking overhead bytes  	[MsgId: MMSG-26385]
Action.c(15): web_submit_form("login.pl") started  	[MsgId: MMSG-26355]
Action.c(15): Submitting form to "http://192.168.1.7:1080/cgi-bin/login.pl", Target Frame="body"  	[MsgId: MMSG-27978]
Action.c(15): Detected non-resource "http://192.168.1.7:1080/cgi-bin/nav.pl?username=Test&password=123456" in "http://192.168.1.7:1080/cgi-bin/login.pl"  	[MsgId: MMSG-26574]
Action.c(15): Detected non-resource "http://192.168.1.7:1080/cgi-bin/error.pl?error=badPassword" in "http://192.168.1.7:1080/cgi-bin/login.pl"  	[MsgId: MMSG-26574]
Action.c(15): Resource "http://192.168.1.7:1080/WebTours/images/mer_login.gif" is in the cache already and will not be downloaded again  	[MsgId: MMSG-26655]
Action.c(15): web_submit_form("login.pl") was successful, 2984 body bytes, 698 header bytes, 36 chunking overhead bytes  	[MsgId: MMSG-26385]
Action.c(26): web_submit_form("login.pl_2") started  	[MsgId: MMSG-26355]
Action.c(26): Submitting form to "http://192.168.1.7:1080/cgi-bin/login.pl", Target Frame="body"  	[MsgId: MMSG-27978]
Action.c(26): Detected non-resource "http://192.168.1.7:1080/cgi-bin/nav.pl?page=menu&in=home" in "http://192.168.1.7:1080/cgi-bin/login.pl"  	[MsgId: MMSG-26574]
Action.c(26): Detected non-resource "http://192.168.1.7:1080/cgi-bin/login.pl?intro=true" in "http://192.168.1.7:1080/cgi-bin/login.pl"  	[MsgId: MMSG-26574]
Action.c(26): Found resource "http://192.168.1.7:1080/WebTours/images/flights.gif" in HTML "http://192.168.1.7:1080/cgi-bin/nav.pl?page=menu&in=home"  	[MsgId: MMSG-26659]
Action.c(26): Found resource "http://192.168.1.7:1080/WebTours/images/itinerary.gif" in HTML "http://192.168.1.7:1080/cgi-bin/nav.pl?page=menu&in=home"  	[MsgId: MMSG-26659]
Action.c(26): Found resource "http://192.168.1.7:1080/WebTours/images/in_home.gif" in HTML "http://192.168.1.7:1080/cgi-bin/nav.pl?page=menu&in=home"  	[MsgId: MMSG-26659]
Action.c(26): Found resource "http://192.168.1.7:1080/WebTours/images/signoff.gif" in HTML "http://192.168.1.7:1080/cgi-bin/nav.pl?page=menu&in=home"  	[MsgId: MMSG-26659]
Action.c(26): web_submit_form("login.pl_2") was successful, 5780 body bytes, 2044 header bytes, 36 chunking overhead bytes  	[MsgId: MMSG-26385]
Ending action Action.
Ending iteration 1.
Ending Vuser...
Starting action vuser_end.
Ending action vuser_end.
Vuser Terminated.

 思考时间可以设置

5.脚本增强

如何加强脚本

事务插入

函数:

lr_start_transcation("login")  开始事务  

lr_end_transaction("login", LR_AUTO);结束事务

注意:事务必须有开始,有结束。缺一不可,会报错,名称也必须匹配

点击运行

事务的开始和结束

插入集合点

集合是什么?

在loadrunner为了达到并发这样的机制,引入了集合

让所有用户同时发起请求,等到所有用户都发出了,才向下执行脚本

lr_rendezvous("rendzous1"); 

插入检查点

属于注册函数,需要放在URL之前才会生效,

函数:web_reg_find();

 

参数化

 还可以添加参数

运行:

 

打印相关日志

函数:lr_log_message("打印内容");

Action()
{web_url("WebTours", "URL=http://192.168.1.7:1080/WebTours/", "Resource=0", "RecContentType=text/html", "Referer=", "Snapshot=t1.inf", "Mode=HTML", LAST);lr_think_time(15);lr_rendezvous("rendzous1");lr_start_transaction("login");//一百万用户到达这个点后才进行向下执行web_submit_form("login.pl", "Snapshot=t2.inf", ITEMDATA, "Name=username", "Value=Test", ENDITEM, "Name=password", "Value=123456", ENDITEM, "Name=login.x", "Value=43", ENDITEM, "Name=login.y", "Value=9", ENDITEM, LAST);lr_think_time(7);lr_end_transaction("login", LR_AUTO);web_reg_find("Fail=NotFound","Search=All","SaveCount=","Text=Welcome",LAST);web_submit_form("login.pl_2", "Snapshot=t3.inf", ITEMDATA, "Name=username", "Value={username}", ENDITEM, "Name=password", "Value={password}", ENDITEM, "Name=login.x", "Value=51", ENDITEM, "Name=login.y", "Value=5", ENDITEM, LAST);lr_log_message("登录成功!");return 0;
}

3.Controller的基础使用

Controller功能:用来设计测试场景

通过Controller设计简单的测试场景,简单的分析性能测试报告

Controlletonr打开方式:通过VUG打开或者双击直接打开

这种就是VUG打开,直接打开方式: 

将左侧需要的导入点Ok即可

设置场景

 虚拟用户交流表

开启这些服务 ,才能检测windows资源

添加监视 

 

  

运行场景

这里需要注意这个软件的BUG,需要点击view,show available graphs,然后点击右上方的  调整窗口大小  的按钮  才能显示出下列图表

一些放大图表 

4.Analysis基础使用

先勾选运行完场景后自动生成测试报告 

将运行时间改短一些,然后运行等待,自动生成测试报告

分为两部分

汇总报告

这是汇总报告,下面是图表

图表

 

 

 

 要查看其他指标的图,可以添加

添加虚拟用户汇总表

 合并其他表(点击率和吞吐量) 

 趋势大致相同,就没什么问题(点击在吞吐量之前,先请求才会有吞吐量。并且趋势大致相同 )

http://www.lryc.cn/news/97018.html

相关文章:

  • Zia和ChatGPT如何协同工作?
  • 【位操作】——获取整数变量最低位为 1 的位置
  • gtest测试用例注册及自动化调度机制源代码流程分析
  • IOS自动化测试环境搭建教程
  • 常用API学习08(Java)
  • 面试题-TS(八):什么是装饰器(decorators)?如何在 TypeScript 中使用它们?
  • Jenkins 还可以支持钉钉消息通知?一个插件带你搞定!
  • 7.ES使用
  • Web安全基础
  • jQueryAPI
  • 如何将路径字符串数组(string[])转成树结构(treeNode[])?
  • 中国工程院院士陈晓红一行莅临麒麟信安调研
  • 解决Linux环境下启动idea服务,由于权限问题无法正常启动问题
  • Linux6.16 Docker consul的容器服务更新与发现
  • Redis学习2--使用java操作Redis
  • [游戏数值] 常用刷新次数钻石消耗的设计
  • rancher 2.5.7 证书过期处理方案
  • Tomcat中的缓存配置
  • C++ 函数模板
  • 大语言模型分词的 chunk_size 和 chunk_overlap 说明和验证
  • OpenStack - 构建强大的云计算平台
  • 在CSDN学Golang分布式中间件(ElasticSearch)
  • web-文件包含
  • 20230724----重返学习-vue3知乎日报项目实战
  • 1.react useState使用与常见问题
  • LLaMA2可商用|GPT-4变笨|【2023-0723】【第七期】
  • [SQL系列] 从头开始学PostgreSQL 自增 权限和时间
  • 【云原生】Kubernetes之Secret
  • 细说小程序底部标签---【浅入深出系列006】
  • 【VUE】使用elementUI上传组件-提示不存在