【软件测试】LoadRunner | 基本概念 | VUG录制脚本 | 脚本加强 | Controller设计测试场景 | Analysis产生测试报告

news2024/9/25 1:25:53

文章目录

  • LoadRunner
    • 一、LoadRunner的基本概念
          • 功能:
            • 原理:
            • 组成:
    • 二、开发测试脚本
      • 1.VUG录制脚本
          • 1.WebTours系统
            • WebTours的配置:
            • 成功访问后进行注册
          • 2.脚本录制
          • 3.运行(回放)
      • 2.脚本加强
          • 1.插入事务
            • 插入函数:
            • 注意事项
          • 2.插入集合点
          • 3.插入检测点
          • 4.参数化输入
          • 5.打印日志
      • 3.Controller设计测试场景
            • 设计场景
            • 运行场景
      • 4.Analysis产生测试报告
            • 汇总报告

LoadRunner

在这里插入图片描述

滚滚镇楼~

  • 使用LoadRunner录制脚本和编写脚本

一、LoadRunner的基本概念

  • LoadRunner通过以模拟上千万用户实施并发负载及实时性能监测的方式来确认和查找问题,优化性能和加速应用系统的发布周期。

在这里插入图片描述

功能:
  • LoadRunner是一种适用于许多软件体系架构的自动负载测试工具,从用户关注的响应时间、吞吐量, 并发用户和性能计数器等方面来衡量系统的性能表现,辅助用户进行系统性能的优化
原理:
  • 启动以后,在任务栏会有一个Agent进程,通过Agent进程,监视各种协议的Client与Server端的 通讯,用LR的一套C语言函数来录制脚本,所以只要LR支持的协议,就不会存在录制不到的,然后LR调用这些 脚本向服务器端发出请求,接受服务器的响应。至于服务器内部如何处理,它不关心。
组成:
  • LoadRunner主要包括三个前台功能组件,分别为VuGen(虚拟用户脚本生成器)、Controller(测试控制器)和Analysis(结果分析器)。
  • 系统会自动调用后台功能组件 LG(负载生成器)和 Proxy(用户代理)来完成性能测试工作。
  • VuGen 是录制、编写脚本。通过录制或编写脚本来模拟用户的行为。
  • Controller 设计场景,运行场景。是执行负载测试管理和监控的中心。在这里指定具体的性能测试方案,执行性能测试,收集测试数据,监控测试指标。监控工具将测试过程中收集到的客户机、服务器和网络性能指标数据显示在监控页面上,便于测试人员对系统表现进行随时掌握。
  • LG是模拟多用户并发访问被测试系统的组件。模拟多用户访问系统的前提是已经具备了虚拟用户脚本,VuGen 是录制和编辑虚拟用户脚本的工具,录制好的脚本是不同语言表达的文本文件,在LG执行时被解析和执行。脚本录制和回放过程是在Proxy支持下完成的。
  • Analysis 产出性能测试报告。在测试完成后,对测试过程中收集到的各种性能数据进行计算、汇总和处理,生成各种图表和报告,为系统性能测试结果分析提供支持。

二、开发测试脚本

1.VUG录制脚本

  • 使用LoadRunner自带的WebTours系统进行录制
1.WebTours系统

在这里插入图片描述

  • LoadRunner/WebTours/StartServer.bat 双击StartServer.bat进行启动

    在这里插入图片描述

WebTours的配置:

​ LoadRunner/ WebTours/ conf / httpd.conf 找到端口号为1080

在这里插入图片描述

成功访问后进行注册

在这里插入图片描述

在 cbi-bin/users路径下,存放着之前注册的用户和密码
在这里插入图片描述

2.脚本录制
  • 使用VUG进行脚本录制

打开VUG

在这里插入图片描述

创建新脚本

在这里插入图片描述

在这里插入图片描述

在这里插入图片描述

Actions中保存的就是录制的脚本:

vuser_init:初始化(从始至终只运行一次)

Action:存放录制好的脚本:(编写代码)默认运行一次,也可以运行多次。在初始化之后运行

vuser_end:程序退出时执行,运行时机是action运行完成之后执行。

Runtime Settings: 设置脚本运行的参数

Parameters: 参数化时会用到

  • 点击红点,开始录制

在这里插入图片描述

在这里插入图片描述

在这里插入图片描述

  • 如果无法录制成功,可以用Fiddler来录制:
  • 参考文章: https://blog.csdn.net/2401_83387413/article/details/138130301
3.运行(回放)

在这里插入图片描述

2.脚本加强

1.插入事务
插入函数:

在这里插入图片描述

点击,开始的事务

在这里插入图片描述

输入事务名

在这里插入图片描述

生成了这一行代码,这就是开始事务对应的函数。

在这里插入图片描述

插入同理结束事务的函数

注意事项

事务必须有开始、有结束

开始的事务和结束的事务之间的事务名称必须一致

2.插入集合点

​ 函数:lr_rendezvous

在LoadRunner中为了达到并发这样的机制,引入了集合(让所有的用户同时发起请求)

在这里插入图片描述

在这里插入图片描述

插入集合点函数

3.插入检测点

​ 函数:web_reg_find

在这里插入图片描述

在这里插入图片描述

  • 是注册类函数,需要在请求之前进行检查点的插入
4.参数化输入

右键点击变量,进行创建

在这里插入图片描述

在这里插入图片描述

点击ok之后,下一个no

在这里插入图片描述

双击Parameters

在这里插入图片描述

进行数据的插入

在这里插入图片描述

在Runtime Settings中 更改日志Log ,并且调整运行的次数

外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传

  • 参数化设置完后,需要更改日志
5.打印日志

​ 函数:lr_log_message

在这里插入图片描述

在这里插入图片描述

​ 函数:lr_output_message

在这里插入图片描述

在这里插入图片描述

	//如果当前登录的用户是weng,输出字符串:weng hello
	if(strcmp("weng",lr_eval_string("{username}"))==0 ){
	   	lr_output_message("hello %s",lr_eval_string("{username}"));
	   }
	   

3.Controller设计测试场景

设计场景

1.通过VUG打开

在这里插入图片描述

在这里插入图片描述

设计场景:

在这里插入图片描述

运行场景

状态区域

在这里插入图片描述

操作区域和数据展示

在这里插入图片描述

监控指标区域

在这里插入图片描述

图表区域

在这里插入图片描述

4.Analysis产生测试报告

汇总报告

在这里插入图片描述

图表

在这里插入图片描述

点击移步博客主页,欢迎光临~

偷cyk的图

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

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

相关文章

如何计算摄像头一个像素对应的实际面积(热成像仪选型1)

1. 前言 热成像仪广泛应用于缺陷检测,那么如何选择热成像仪,以满足缺陷检测需求?关键问题是:如何知道热成像仪能不能拍摄清楚我的缺陷呢?,要回答这个问题,就需要计算出热成像仪在最佳拍摄距离下…

2.5 OJ 网站的使用与作业全解

目录 1 OJ 网站如何使用 1.1 注册账户 1.2 登录账户 1.3 做题步骤 2 本节课的 OJ 作业说明 3 章节综合判断题 4 课时2作业1 5 课时2作业2 6 课时2作业3 1 OJ 网站如何使用 〇J 是英文 Online Judge 的缩写,中文翻译过来是在线判题。当用户将自己编写的代码…

浪潮天启防火墙TQ2000远程配置方法SSL-V偏、L2xx 配置方法

前言 本次设置只针对配置V偏,其他防火墙配置不涉及。建议把防火墙内外网都调通后再进行V偏配置。 其他配置可参考:浪潮天启防火墙配置手册 配置SSLVxx 在外网端口开启SSLVxx信息 开启SSLVxx功能 1、勾选 “启用SSL-Vxx” 2、设置登录端口号&#xff0…

ROS1 DWB 与 ROS2 DWA 比较

“DWA算法(dynamic window approach)是移动机器人在运动模型下推算(v,w)对应的轨迹,确定速度采样空间或者说是动态窗口(三种限制);在速度空间(v,w)中采样多组速度,并模拟这些速度在一定时间内的运动轨迹,通过一个评价函数对这些轨迹打分,选取最优的轨迹来驱动机器人运动”。ROS…

如何利用桌面工作计划软件制定自己的to do清单?

在我们的日常生活和工作中,经常会遇到各种各样的任务需要完成。如果没有一个明确的计划和安排,我们可能会感到混乱和压力,而桌面工作计划软件可以帮助我们更好地管理和规划我们的时间和任务。今天,我们就来聊聊如何利用这些工具&a…

职升网:二级建造师考试科目分析!

二级建造师考试包含三个主要科目,它们分别是《建设工程施工管理》、《建设工程法规及相关知识》以及《专业工程管理与实务》。以下是这三个科目的详细考试内容: 建设工程施工管理: 此科目作为建造师考试的基础科目,其核心内容是…

走进linux

1、为什么要使用linux 稳定性和可靠性: Linux内核以其稳定性而闻名,能够持续运行数月甚至数年而不需要重新启动。这对于服务器来说至关重要,因为它们需要保持长时间的稳定运行,以提供持续的服务 安全性: Linux系统…

酷克数据亮相第13届PostgreSQL中国技术大会,获数据库杰出贡献奖

7 月 12 日,第 13 届 PostgreSQL 中国技术大会在杭州盛大开幕。本次大会以“聚焦云端创新,汇聚智慧共享”为主题,邀请了国内外 PG 领域众多行业大咖、学术精英及技术专家,共同探讨数据库领域的发展趋势、技术创新和实践经验。酷克…

本地部署,使用ColorizeArtistic_gen.pth大模型进行图像上色

目录 引言 技术背景 模型架构 本地部署 运行结果 实验结果与分析 应用实例 结论 参考文献 引言 图像上色(Image Colorization)是指将黑白图像转换为彩色图像的技术。在数字化时代,这种技术可以用于修复旧照片、增强艺术作品以及在各…

FDL与Kettle功能对比分析之定时任务DDL

开发者在进行数据处理任务时, 一旦源数据库的表结构发生变化,而目标数据库没有及时进行同步,就会导致任务执行失败。DDL同步就是用来解决这一问题,它会自动识别源表结构变化,并及时更新到目标数据库中,保障…

1. 变量、运算符、表达式、输入与输出习题

第一节题单 1. A B import java.util.Scanner;public class Main {public static void main(String[] args) {Scanner sc new Scanner(System.in);int a,b;a sc.nextInt();b sc.nextInt();System.out.println(ab);} }608.差 604. 圆的面积 注意不能用float,float的精度不够…

智能硬件——0-1开发流程

文章目录 流程图1. 市场分析具体分析 2. 团队组建2. 团队组建早期团队配置建议配置一:基础型团队 (4人)配置二:扩展型团队 (6人)配置三:全面型团队 (7人) 3. 产品需求分析4. ID设计(Industrial Design, 工业设计)5. 结…

展望未来:在【PyCharm】中结合【机器学习】实现高效的图形化处理

欢迎来到 破晓的历程的 博客 ⛺️不负时光,不负己✈️ 文章目录 引言一、PyCharm简介与配置1.1 PyCharm基础1.2 图形化库配置 二、机器学习项目中的数据可视化2.1 数据加载与预处理2.2 数据探索性可视化2.3 模型训练与结果可视化 三、PyCharm中的图形化调试四、高级…

如何追踪ping连接中的所有路由器的数量和IP

如何快速判断ping连接经过的路由器个数和IP? 方法一: ping命令会返回一个TTL,TTL(Time To Live)存活时间,一般初始值为64,每经过一个路由器就减一,当TTL为0时丢弃网络包&#xff0…

设置sudo权限

1.使用root账号登录 2.使用visudo打开sudo的配置文件 3.CtrlF翻页到#All root to run any commands anywhere 4.敲击键盘i键切到插入模式 5.在root配置信息一行下方加入一行,以用户test为例: test ALL(ALL) NOPASSWD: ALL

Linux DRM 那些事 - HDMI 接口 DTS 配置

本文基于RockPI 4A单板Debian系统 Linux 4.4 内核介绍DRM框架HDMI接口DTS配置。 在DTS中主要实现:HDMI的使能、VOP绑定、IOMUX引脚配置和HDMI控制器配置。 一、HDMI 配置 文件:arch/arm64/boot/dts/rockchip/rk3399-rock-pi-4.dtsi #include "rk3…

hutool处理excel时候空指针小记

如图所示&#xff0c;右侧的会识别不到 参考解决方案&#xff1a; /***Description: 填补空缺位置为null/空串*Param: hutool读取的list*return: 无*Author: y*date: 2024/7/13*/public static void formatHutoolExcelArr(List<List<Object>> list) {if (CollUtil…

graphviz subgraph添加边界框

subgraph name 属性必须要以cluster开头。 A Quick Introduction to GraphvizAn awesome tool for software documentation and visualizing graphshttps://www.worthe-it.co.za/blog/2017-09-19-quick-introduction-to-graphviz.html digraph {rankdir"LR"// the n…

教材目录管理功能概述

在智慧校园的教材管理体系中&#xff0c;教材目录管理板块扮演着连接知识与学习者的桥梁角色&#xff0c;对教育资源的有序部署与高效运转起着至关重要的作用。该板块聚焦于基础功能的精炼与优化&#xff0c;力图构建一个界面友好、操作简便的教材信息管理环境。 该板块设计之初…

【Unity学习笔记】第十九 · 物理引擎约束求解解惑(LCP,最优,拉格朗日乘数法,SI,PGS,基于冲量法)

转载请注明出处: https://blog.csdn.net/weixin_44013533/article/details/140309494 作者&#xff1a;CSDN|Ringleader| 在学习物理引擎过程中&#xff0c;有几大问题一直困扰着我&#xff1a; 约束求解到底是LCP还是带约束最优问题&#xff1f;约束求解过程中拉格朗日乘数法…