测试软件LoadRunner 的性能测试流程及结果分析
cac55 2024-09-26 07:27 17 浏览 0 评论
性能测试目的
- 1 什么是性能测试?
性能测试是通过性能的测试工具模拟多种正常、峰值以及异常负载条件来对系统的各项性能指标进行测试。
负载测试和压力测试都属于性能测试,两者可以结合进行。通过负载测试,确定在各种工作负载下系统的性能,目标是测试当负载逐渐增加时,系统各项性能指标的变化情况。压力测试是通过确定一个系统的瓶颈或者不能接受的性能点,来获得系统能提供的最大服务级别的测试。
性能测试分类及术语
- 1 测试分类
- 负载测试(Load Testing):
负载测试是指在一定的软件、硬件及网络环境下,运行一种或多种业务,在不同虚拟用户数量的情况下,测试服务器的性能指标是否在用户的要求范围内,以此确定系统所能承载的最大用户数、最大有效用户数,以及不同用户数下的系统响应时间及服务器的资源利用率。
- 压力测试(Stress Testing):
压力测试是指在一定的软件、硬件及网络环境下,模拟大量的虚拟用户向服务器产生负载,是服务器资源处于极限状态下并长时间连续运行,以测试服务器在高负载情况下是否能够稳定工作。与负载测试获得峰值性能数据不同,压力测试强调在极端情况下系统的稳定性,此时处理能力已经不重要了。
- 2 专业术语
- 场景(Scenario):
场景即测试场景。在LoadRunner的Controller部件中,可以设计与执行用例的场景,设置场景的步骤主要包括:在Controller中选择虚拟用户脚本、设置虚拟用户数量、配置虚拟用户运行时的行为、选择负载发生器(Load Generator)、设置执行时间等。
- 负载发生器(Load Generator):
用来产生压力的机器,受Controller控制,可以使用户脚本在不同的主机上执行。在性能测试工作中,通常由一个Controller控制多个Load Generator以对被测试系统进行加压。
- 虚拟用户(Virtual User/Vuser):
对应于现实中的真实用户,使用LoadRunner模拟的用户称为虚拟用户。性能测试模拟多个用户操作可以理解为:这些虚拟用户在跑脚本,以模拟多个真正用户的行为。
- 虚拟用户脚本(Vuser script):
通过Vuser Generator录制或开发的脚本。这些脚本用来模拟用户的行为。
- 事务(Transaction):
测试人员可以将一个或多个操作步骤定义为一个事务,可以通俗的理解事务为"人为定义的一系列请求(请求可以是一个或者多个)"。在程序上,事务表现为被开始标记和结束标记圈定的一段代码区块。Loadrunner根据事务的开头和结尾标记,计算事务响应时间、成功/失败的事务数。
LoadRunner三大组件
- 1 Loadrunner安装
Loadrunner安装破解可以需要大家去自行解决,搜索可以解决任何问题!
- 2 Loadrunner组成
- VuGen(虚拟用户生成器):用于录制系统性能测试脚本或者手动创建编写性能测试脚本。
- Controller (控制器):用于组织、驱动、管理和监控负载测试。
- Analysis (分析器):用于查看、分析和比较性能结果。
- 3 性能测试工作流程
【制定测试计划】=>【创建测试脚本】=>【设计测试场景】=>【执行测试场景】
=>【分析测试结果】=>【系统性能调优】
- 制定测试计划方案:确定测试要求,如并发用户数量、典型业务场景流程;测试计划等。
- 创建Vuser脚本:使用Virtual User Generator录制、手动编写测试脚本。
- 设计测试场景:使用LoadRunner Controller 设置测试场景。
- 执行场景:使用LoadRunner Controller 驱动、管理并监控场景的运行。
- 分析测试结果:使用LoadRunner Analysis 生成报告和图表并评估性能。
创建测试脚本
- 1 录制测试脚本
- 2 测试脚本调试
- 3 脚本参数化
- 4 关联变量
例如:"token":"1JYPO_yuDuqlSa5Gd9gnUBm4ShhmEKYSCohcnc6sNNw"获取token值
- 5 检查点设置
设置场景运行脚本
- 1 运行测试场景
Controller控制台场景执行图,各部分图数展示:
分析测试结果
- 1 性能指标
TPS:Transaction per second 指应用系统每秒钟处理完成的交易数量,是估算应用系统性能的重要依据。一般而言,评价系统性能均以每秒完成的技术交易的数量来衡量。系统整体处理能力取决于处理能力最低模块的TPS值。
HPS:Hit per second 每秒点击次数指一秒钟的时间内用户对web页面的链接、提交按钮等点击总和。HPS一般与 TPS成正比关系,是B/S系统中非常重要的性能指标之一。
事务响应时间:Transaction Response Time 指脚本中开始到结束的脚本测试过程中的响应时间。
资源利用率:资源利用率是指系统在负载运行期间,数据库服务器、应用服务器、web服务器的CPU、内存、硬盘、外置存储,网络带宽的使用率。
- 2 结果分析
通过执行场景得到结果的相关数据:TPS、响应时间、CPU、IO等。根据性能测试方案中提到的性能指标,确认结果是否符合要求。不符合则需要找到性能瓶颈并优化。
- 配置项检查:中间件活跃线程数、JVM相关内存分配、数据库连接池等
- 硬件资源:增加CPU、内存等硬件资源(资源不够情况下)以及增加服务器数量
- SQL语句以及代码分析:通过分析SQL和代码,找出逻辑复杂执行效率低的SQL或代码并修改。
- 系统架构分析:风险较大。(一般由架构师执行)
感谢您的阅读,如果对您有帮助,欢迎关注"CRMEB"头条号。码云上有我们开源的商城项目,知识付费项目,均是基于PHP开发,学习研究欢迎使用,关注我们保持联系!
相关推荐
- 基于FPGA的伪随机序列发生器设计(fpga伪随机数发生器)
-
基于FPGA的伪随机序列发生器设计1基本概念与应用1)LFSR:线性反馈移位寄存器(linearfeedbackshiftregister,LFSR)是指给定前一状态的输出,将该输出的线性...
- 基于MATLAB的BP神经网络预测计算App
-
BP(BackPropagation)神经网络可用于数据的预测,是经常使用的预测方法之一。之前介绍了基于MATLAB的guide制作的BP神经网络预测计算GUI界面,但是随着MATLAB版本的更新,之...
- 《matlab/simulink仿真ROS学习笔记》第1期
-
PC平台:window10软件平台:MATLABR2016a备注:不知道具体的matlab版本号,可以打开matlab在终端界面输入:version查看一,调用matlab软件中自带的ROS步骤:...
- matlab读取表格数据以固定周期通过串口发送
-
如题,这里对数据的处理对于熟悉matlab各函数操作的同学来讲,是常规操作,但对于matlab新手或只是想借用matlab工具将存于PC端文件中的数据通过串口发送出去的工程人员来说,由于对matlab...
- 选择电磁阀必须要知道的8个因素(电磁阀的选择应从哪些方面考虑)
-
如何正确选择电磁阀,电磁阀的种类、规格、标准以及根据不同的介质选择的型号各不相相同,电磁阀的参数选择不全面的话,会影响使用寿命、诱发各种潜在危险甚至事故,下面诺伊曼的工程师将与您一起探讨关于正确选择电...
- 一种图像局部特征快速匹配算法(图像局部特征描述和提取方法研究)
-
摘要:在图像处理和机器视觉领域,SIFT是目前被广泛应用的一种基于局部特征的图像匹配算法。针对SIFT算法匹配速度较慢和常常存在错误匹配对的问题,本文提出在匹配过程中采用角度相似性分析替代传统的欧...
- 增益映射耦合局部正则化的图像重构算法
-
朱莉(西安科技大学计算机学院,陕西西安710054)摘要:针对当前的图像重构方法在对多帧超分辨率图像复原时,存在明显的模糊效应与振铃效应的不足,提出增益映射控制耦合局部正则化的图像重构算法。首...
- 每天一个MATLAB小技巧(9)(matlab简单教程)
-
欢迎关注公众号:【阿波兹得】上文接:每天一个MATLAB小技巧(8)如果你觉得我的文章对你有亿点点帮助的话,兄弟姐妹们看的时候顺便戳一下关注、点赞、收藏~谢谢朋友们,大家的支持就是我不断更新的最大动力...
- 零基础入门Matlab:两小时快速上手指南
-
前言Matlab作为一款强大的数学计算和可视化工具,广泛应用于工程、科研和数据分析领域。本文为零基础学习者量身定制,通过简洁明了的讲解和案例,助你快速掌握Matlab核心功能,两小时轻松入门!1.界...
- 用改进的深度差分特征识别人体部位
-
摘要:为了进一步提高人体部位识别正确率,考虑人体部位尺寸不一特性,提出了改进型深度差分特征。改进型深度差分特征根据人体部位尺寸大小确定特征偏移量取值,然后利用随机森林算法训练分类模型,实现了人体部...
- MATLAB《自动控制原理》相关编程(二)
-
摘要:本文主要讲解自动控制原理中涉及的相关MATLAB函数,包括拉式变换和反拉式变换、传递函数的化简(并联和串联)、带延时的传递函数、单位速度、单位加速度和其他任意输入的响应。1.拉式变换时域函数转...
- MATLAB-图片自动编号、命名及保存
-
在进行运算的可以,可能经常需要对图形进行保存,手动操作比较繁琐,可以自动的生成图片并按照一定的规律自动命名,这样可以提高效率。实现功能会涉及到一些函数的使用和往期介绍的图像的保存方法。下面简单回顾一下...
- MATLAB的Simulink常用模块(一)(simulink的matlab function模块)
-
在MATLAB的Simulink中有些常用的模块,今天主要介绍常数模块、示波器模块、以及模块属性的操作函数。1.模块的构成元素输入/输出端口:作为模块之间传递数据的纽带,连接输入信号和输出信号。模块...
- 闪耀金色光芒的冥王侍卫,掌管宇宙睡意的使者,温柔杀手修普诺斯
-
在极乐净土中有两位守护冥王哈迪斯的神,一个是死神塔纳多斯,另一个就是他的哥哥修谱诺斯。这两个神明一个是能掌握人类生死的大权,另一个则是负责人类和神仙的睡眠。可以说这两个人都十分的厉害。那么作者就给大...
- 无线安全的高级利用:隔离网络里你不知道的Wi-Fi隐蔽传输通道
-
2018年4月,在荷兰阿姆斯特丹HackInTheBox安全会议上,我们分享了一个关于隔离网攻击技术的议题——GhostTunnel:CovertDataExfiltratio...
你 发表评论:
欢迎- 一周热门
- 最近发表
- 标签列表
-
- 如何绘制折线图 (52)
- javaabstract (48)
- 新浪微博头像 (53)
- grub4dos (66)
- s扫描器 (51)
- httpfile dll (48)
- ps实例教程 (55)
- taskmgr (51)
- s spline (61)
- vnc远程控制 (47)
- 数据丢失 (47)
- wbem (57)
- flac文件 (72)
- 网页制作基础教程 (53)
- 镜像文件刻录 (61)
- ug5 0软件免费下载 (78)
- debian下载 (53)
- ubuntu10 04 (60)
- web qq登录 (59)
- 笔记本变成无线路由 (52)
- flash player 11 4 (50)
- 右键菜单清理 (78)
- cuteftp 注册码 (57)
- ospf协议 (53)
- ms17 010 下载 (60)