负载测试和压力测试都属于性能测试,两者可以结合进行。
通过负载测试,确定在各种工作负载下系统的性能,目标是测试当负载逐渐增加时,系统各项性能指标的变化情况。
压力测试是通过确定一个系统的瓶颈或者不能接受的性能点,来获得系统能提供的最大服务级别的测试。
性能测试分类及术语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 录制测试脚本以CRMEB Pro测试为例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或代码并修改。
系统架构分析:风险较大。
(一般由架构师执行)
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)