第5章-性能测试_第1页
第5章-性能测试_第2页
第5章-性能测试_第3页
第5章-性能测试_第4页
第5章-性能测试_第5页
已阅读5页,还剩36页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

Slide105February2023第五章性能测试5.1性能测试的概念

性能测试是通过自动化测试工具模拟多种正常值、峰值、异常负载的条件下对系统各项指标进行的测试。

1.系统性能的主要指标(1)吞吐量/处理能力:请求数量/每秒、页面数量/每秒

(2)负载:客户端负载、服务器端负载;

(3)响应时间:最大响应时间、平均响应时间、网络传输时间、Web服务器处理时间、应用服务器处理时间、数据库服务器处理时间;Slide205February2023第五章性能测试5.1性能测试的概念

1.系统性能的主要指标(4)TPS(TransactionsPerSecond):应用系统每秒钟处理完成的交易数量。TPS值表现的是服务器端的程序行为,是衡量服务器处理能力高低的一个主要指标。(5)HPS(HitsPerSecond):每秒点击次数。指在1秒钟的时间内用户对Web页面的链接、提交按钮等点击的总和。HPS值表现的是用户整体行为,是衡量在线负载的指标。

Slide305February20235.1性能测试的概念

2.性能瓶颈概念 (1)硬件性能瓶颈; (2)网络设备性能瓶颈; (3)操作系统性能瓶颈; (4)服务器软件性能瓶颈; (5)应用程序性能瓶颈。

Slide405February20235.2负载压力测试

负载压力测试是指在一定约束条件下测试系统所能承受的并发用户量、运行时间、数据量,以确定系统所能承受的最大负载。负载压力测试是性能测试的重要组成部分。主要方法是并发性能测试、疲劳强度测试、大数据量测试、速度测试。

Slide505February20235.2负载压力测试

负载压力测试的位置:(1)客户端交易处理; (2)服务器资源;

(3)数据库资源;(4)Web服务器;(5)中间件。5.2.1负载压力测试指标

Slide605February20235.2负载压力测试

交易处理的负载压力指标: (1)并发用户数量

(2)交易处理指标

■平均事务响应时间;

■1秒钟内处理事务总数。

5.2.1负载压力测试指标

Slide705February20235.2负载压力测试

交易处理的负载压力指标:(3)Web请求指标

■每秒点击次数;

■吞吐量;

■每秒HTTP响应数量;

■每秒下载页面数量;

■每秒重试次数;■

每秒SSL连接数量。5.2.1负载压力测试指标

Slide805February20235.2负载压力测试

并发性能测试的两个阶段:负载测试、压力测试。逐渐增加负载,直到系统性能瓶颈出现,通过综合分析系统的执行指标和资源状况确定系统的并发性能。负载测试:性能拐点之前的测试。压力测试:性能拐点以上的测试。

1.并发测试的意义主动的负载和压力测试可避免出现意外情况,从而确保网站在高负载的情况下仍能正常运转。5.2.2并发性能测试

Slide905February20235.2负载压力测试

2.并发测试的好处(1)可预测成本和预算成本;(2)避免花费高昂的费用来补救以前存在的问题;(3)更精确地预测可扩展性;(4)提高网站性能。

3.并发测试的目标(1)评价系统的当前性能;

(2)预测系统的未来性能;

(3)找到瓶颈问题。

5.2.2并发性能测试

Slide1005February20235.2负载压力测试

4.负载测试负载测试是在特定运行环境下对被测对象施以大用户量,检查CUP负载、内存使用、响应时间等影响系统性能的指标通过软件工具创建虚拟用户,模仿典型的操作行为。在虚拟用户开展活动的期间,控制台将记录服务器的反应时间,提供给测试人员进行分析。

5.2.2并发性能测试

Slide1105February20235.2负载压力测试

5.压力测试压力测试是在特定运行环境下长期连续运行被测软件,并施加一定的负载(并发、多用户、多重循环),检查内存使用、系统响应时间等影响系统性能的指标。(1)稳定性压力测试;(2)破坏性压力测试。压力测试的目的是发现在什么条件下系统的性能变得不可接受,并通过对应用程序施加越来越大的负载,直到发现应用程序性能下降的拐点。5.2.2并发性能测试

Slide1205February20235.2负载压力测试

6.并发测试的准备工作(1)准备测试环境;(2)选择测试工具;(3)产生测试数据。5.2.2并发性能测试

Slide1305February20235.2负载压力测试

疲劳强度对系统而言也是一种负载,其关注的重点是系统经过长时间运行后的状态。主要暴露的问题有内存泄露、资源争用等。 疲劳强度测试是在系统稳定的情况下施加一定量的并发用户数量,并持续运行,检查系统性能指标和资源占用情况。(1)日常业务疲劳强度模拟;(2)高峰业务疲劳强度模拟。

5.2.3

疲劳强度测试

Slide1405February20235.2负载压力测试

1.大数据量测试类型

(1)独立数据量测试;(2)综合数据量测试

2.自动生成大数据量大数据量测试的基本条件就是能够生成大量的数据和并发操作。对于特定的系统,可以自行开发数据发生器和自动并发操作模拟系统。

3.大数据量管理 数据生成、数据编辑、类型转换、数据比较、数据迁移。5.2.4大数据量测试

Slide1505February20235.2负载压力测试

1.制定测试计划

(1)定义测试目标■以可度量的指标作为测试目标;■确定测试时间;(2)定义测试范围■定义性能度量的范围; ■定义虚拟用户(VUser)。5.2.5负载压力测试实施

Slide1605February20235.2负载压力测试

2.分析测试需求

(1)分析应用程序■连接到系统的用户数量;■客户机的硬件配置情况;■Web服务器和数据库服务器的性能;■客户机与服务器之间的通信方式; ■分析任务分布情况。5.2.5负载压力测试实施

Slide1705February20235.2负载压力测试

2.分析测试需求

(2)测试需求的内容■测试对象;■系统配置;■应用系统软件结构。 (3)测试强度估算测试强度估算:按照80~20原理,每个工作日中80%的业务量在20%的时间内产生的,计算出应当施加的测试强度。

5.2.5负载压力测试实施

Slide1805February20235.2负载压力测试

(3)测试强度估算例:每年的业务量主要集中在8个月,每个月有20个工作日,每天有8小时工作时间。每天有80%的业务量是在1.6小时内处理的。假定全年业务处理量为100万笔,系统要求按2倍日常业务量进行测试。年请求数:(100×15%×7+100×70%×5+100×15%×3)×2=1000万/年日请求数:1000×160=6.25万/日秒请求数:(62500×80%)

/1.6×3600=8.68次/秒5.2.5负载压力测试实施

Slide1905February20235.2负载压力测试

3.设计测试案例

(1)测试策略 (2)案例设计5.2.5负载压力测试实施

案例名称并发数量网络环境数据量备注制度文档信息上传50、100100M局域网50用户并发,上传50条记录;100用户并发,上传100条记录。只上传文件,不带附件。文件上传下载50、10050用户并发,新增50条记录;100用户并发,新增100条记录。信息和附件都上传(附件200K)项目管理50、10050用户并发,上传50条记录;100用户并发,上传100条记录。工作记事50、10050用户并发,上传50条记录;100用户并发,上传100条记录。记录操作前后数据库记录数,每个虚拟用户循环执行3次。Slide2005February20235.2负载压力测试

3.设计测试案例

(3)测试内容 一般包括并发性能、疲劳强度、大数据量等。

4.准备测试环境(1)测试环境的基本原则■满足软件运行最低要求;■选择与被测系统一致的操作系统和运行环境;■采用相对独立的测试环境;■系统内无病毒。

5.2.5负载压力测试实施

Slide2105February20235.2负载压力测试

4.准备测试环境(2)负载压力测试环境的注意事项■如果是完全真实环境,要考虑测试对现有业务的影响■如果是模拟真实环境,必须先考虑服务器、数据库、中间件的真实,施加大数据量,后考虑客户机的真实性;■配置与业务相关的测试环境;■测试环境中应包括对交互操作的支持;■测试环境中应包括安装、备份和恢复过程。

5.2.5负载压力测试实施

Slide2205February20235.2负载压力测试

5.准备测试工具(1)模拟多个客户机;(2)能够编辑、执行脚本程序;(3)支持会话或cookies;(4)可以配置用户数量;(5)延时时间;(6)随机选择交互数据;(7)运行状态报告;(8)导出测试结果;(9)提供测试分析工具。

5.2.5负载压力测试实施

Slide2305February20235.2负载压力测试

6.准备测试数据(1)初始测试数据;(2)大量测试数据;(3)典型取值数据。

7.

手工编写测试脚本“Web服务器通用性能测试系统”这个系统不仅能够测试静态HTML页面的响应时间,而且能够模拟真实运行情况,测试动态网页(ASP、PHP、JSP)的响应时间,为服务器性能优化和调整提供依据。

5.2.5负载压力测试实施

Slide2405February20235.2负载压力测试

7.

手工编写测试脚本“Web服务器通用性能测试系统”,主要由三部分组成:(1)性能测试数据;(2)性能测试程序;(3)性能测试结果。在实际运行的Web应用系统中,用户访问页面时传递的query字符串里的参数是不同的。为了逼真地模拟实际情况,测试系统应当在特定时间段内向待测页面同时发送多个请求,每个请求的query参数互不相同。

5.2.5负载压力测试实施

Slide2505February20235.2负载压力测试

7.

手工编写测试脚本5.2.5负载压力测试实施

读URL信息读数据文件并发进程1发送请求计时开始接收响应计时结束下一会话测试系统并发进程2。。。并发进程nSlide2605February20235.2负载压力测试

7.

手工编写测试脚本用户访问Web需要发送URL,信息格式是纯文本。 GEThttp://host:port/path/filename?xxx=@1@&@2@测试程序可以开设n个进程,每个进程可以串行地开设m个会话,每个会话模拟一个用户,按照访问Web的URL格式,从数据文件中读取参数,发出Web访问请求。同时,程序开始计时,直到系统响应,停止计时,统计接收的字节数,保存测试结果,本次会话结束。进入下一个新的会话,如此循环m次。5.2.5负载压力测试实施

Slide2705February20235.2负载压力测试

5.2.5负载压力测试实施

主程序读入数据文件形成二维数组读URL信息子进程等待统计结果…子进程打开Socket从二维数组中读取随机数执行Session…记录输出关闭Socket单个Session生成请求字符串,开始计时连接Web服务器超时吗停止计时,计算总连接时间和接收字节数结果保存,超时为-1Slide2805February20235.2负载压力测试

8.

测试脚本录制、编写与调试测试脚本是指Vuser脚本,即虚拟用户回放所使用的脚本(1)录制基本脚本;

(2)编辑增强脚本;(3)配置运行时设置;(4)以独立模式运行Vuser脚本。5.2.5负载压力测试实施

Slide2905February20235.2负载压力测试

9.场景制定(1)创建Vuser组;

(2)配置Vuser;(3)配置Vuser运行时设置;(4)配置负载生成器。

10.执行测试(1)运行场景;(2)查看Vuser;(3)监视场景。

5.2.5负载压力测试实施

Slide3005February20235.2负载压力测试

11.结果评估与测试报告(1)交易处理性能

并发用户数量

交易响应时间;

交易通过率;

吞吐量。(2)资源占用性能

服务器操作系统占用资源;

数据库资源占用;

中间件资源占用。

5.2.5负载压力测试实施

Slide3105February20235.2负载压力测试

1.单一类型操作的响应时间过长

(1)数据库负载过重;(2)糟糕的数据库设计;(3)事务粒度过大;(4)批处理任务量过大。

2.并发处理能力差应用系统在执行同一类型事务的多个实例时,不能获得与执行实例数量相当的吞吐量,而是大大低于理论值。5.2.6数据库服务器性能问题及原因分析Slide3205February20235.2负载压力测试

3.锁冲突严重

(1)资源锁定导致事务处理超时

■批任务的长时间资源锁定影响其他独立事务处理,导致超时;

■大粒度事务处理在并发执行的实例较多,造成超时;

■锁资源没有被释放,导致超时。5.2.6数据库服务器性能问题及原因分析Slide3305February20235.2负载压力测试

3.锁冲突严重

(2)数据库死锁

■互斥条件:一个资源被分配给特定的资源;

■持有并等待条件:被授权持有资源的进程还可以申请新的资源;

■不可取代原则:资源不能强制从进程中被取走,必须等待持有资源的进程明确释放;

■环等待条件:存在两个以上的进程环形链,其中每一个进程都等待下一个成员所持有的资源。

5.2.6数据库服务器性能问题及原因分析Slide3405February20235.3网络性能测试

(1)吞吐量

吞吐量是指被测设备或系统在不丢包的情况下能够达到的最大包转发速率。 (2)丢包率

由于资源缺乏而未转发的包与拟传输包总数的比例。 (3)网络延时

系统在有负载的条件下转发数据包所需要的时间。5.3.1网络性能测试指标

Slide3505February20235.3网络性能测试

(4)响应时间

从发出请求到获得响应所花费的时间。影响响应时间的因素有很多,如网段的负荷、网络主机。 (5)网络带宽容量 网络带宽容量指的是在网络的两个节点之间的最大可用带宽。这是由组成网络的设备能力所决定的。 (6)网络利用率

网络被使用的时间与总时间(被使用的时间+空闲的时间)的比例。

5.3.1网络性能测试指标

Slide3605February20235.3网络性能测试

(1)吞吐量测试方法

吞吐量测试通常在一对端口上进行,以最大速度在设

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论