首页 > 其他分享 >性能测试-测试用例策略和方法

性能测试-测试用例策略和方法

时间:2024-09-02 21:55:02浏览次数:15  
标签:负载 性能 系统 用户 并发 测试用例 测试

一、测试用例

无论是功能测试还是性能测试,执行用例时候都有优先级之分,对于性能测试来说,优先级可以这样划分:

①.重要的(业务场景中的核心)

②.重复的(用户使用频率最高的)

③.重量级的(消耗大量系统资源的)

设计性能测试用例的简要过程:

1、具体的性能指标分为以下几类:

①.系统容量(数据容量、用户量、用户并发量)

②.系统并发度指标(注册用户、在线用户、并发用户)

③.响应度指标(正常压力下响应能力、峰值压力下响应能力、异常压力下的响应能力)

2、熟悉并且理解整个系统的业务逻辑、实现原理,然后进行需求拆分,得到性能测试需求点

3、多个渠道得到具体性能要求,分析评估风险,优先级,是否进行测试等

4、编写性能测试方案和用例,并进行评审通过,然后执行

PS:一些性能测试的测试点

a.查询 b.保存 c.统计 d.刷新 e.显示 f.传输 g.响应 h.下载

举个例子:打开网络上其他媒介的文件,在网络拥堵的情况下打开执行相关操作,主要测试点如下:

①.数据量小的时候主要执行查询统计刷新等功能点

②.数据量累计到一定程度时的查询统计刷新时间(一定程度:根据实际情况与需求来确定范围)

二、常见的基础性能测试

1、安全可靠性测试

①.用户权限限制:对不同用户权限的限制情况

②.用户和密码封闭性:对相应用户和密码进行次数限制

③.屏蔽用户操作错误:对用户常见操作错误的提示和屏蔽情况

④.错误提示的准确性:对用户的错误提示的准确度

⑤.错误是否导致系统异常退出:有无操作错误引起系统异常退出的情况

⑥.数据备份和恢复手段:系统是否提供备份及恢复功能,备份手段具体如何,是否对备份数据进行加密、压缩等

⑦.输入数据有效性检查:对录入系统的数据进行有效性检查

⑧.留痕功能:系统是否有操作日志,日志记录的操作情况的全面性和准确性,是否含有主要要素

⑨.异常情况的影响:程序运行过程中进行掉电掉网等测试,考察数据和系统的受影响程度,若受损,是否有补救措施等

⑩.数据传输安全性:对有特殊要求的数据传输,对其进行必要的加密处理,使用的算法等

2、资源占用率测试

①.软件安装所占用的硬盘空间:检查软件安装所占用的硬盘空间

②.模块装载后内存占用量:检查模块装载后内存占用量(包括虚拟内存)

③.模块卸载后内存释放量:检查模块卸载后内存释放率(包括虚拟内存)

3、兼容性测试

①.软件兼容:测试软件安装运行的适用平台

②.硬件兼容:硬件平台的配置要求

4、易用性测试

①.易安装性:安装难易程度,是否符合当前流行的,易被接受的安装模式

②.用户界面友好性:界面的简洁程度等

③.易学性:相对用户使用者而言,学习使用的难度,对操作人员的要求等

④.易操作性:操作的难易程度

⑤.联机帮助丰富性:检查联机操作的准确性、全面性,以及关键操作时使用联机帮助的方便性

5、用户文档测试

①.用户手册的完整程度:用户手册内容的全面性、完整性

②.用户手册描述与软件实际功能的一致性:手册与软件实际功能的一直程度

③.用户手册的易理解程度:用户手册对重要操作

④.用户手册提供的学习操作示例:对主要功能和关键操作提供的应用实例有多少,实例的详细程度

6、效率测试

①.通信效率:网络负载、吞吐率、利用率、响应时间、延迟等

②.设备效率:CPU占用率、内存占用率、磁盘占用率、输入输出效率等,包括软件不工作状态下对硬件资源的占用情况和进行业务处理过程中对硬件资源的占用情况

③.执行效率:典型业务场景的执行效率,例如关键的查询、统计等响应时间等

7、可扩展性测试

①.与异种数据接口:有无与其他数据的接口

②.是否能扩展功能模块:能否根据用户要求扩展功能模块

三、常见的进阶性能测试

1、并发性能测试

并发测试的过程,是一个负载测试和压力测试的过程。即逐渐增加负载,直到系统的瓶颈或者不能接收的性能点,通过综合分析执行指标和资源监控指标来确定系统并发性能的过程

测试案例:例如:中间件应能满足一定数量的客户端同时办公的需要

测试内容与监控指标:(负载压力测试;模拟不同数量并发用户测试)

模拟不同数量并发用户执行关键业务,测试至系统能够承受的最大并发用户数。

主要监控指标如下:

● 每分钟事务处理数(Transaction Rate):不同负载下每分钟成功完成的事务处理数;

● 响应时间(Response Time):服务器对每个应用请求  

● Mean:平均的服务器响应时间;

● Max:最大的服务器响应时间;

● StdDev:事务处理服务器响应的偏差,值越大,偏差越大;

● Median:中值响应时间;

● 90%:90%事务处理的服务器响应时间

● 虚拟并发用户数(Total Virtual Users):测试工具模拟的用户并发数量。

2、系统资源监控

在进行负载压力测试的同时,用测试工具对数据库服务器、Web服务器、应用服务器、认证及授权服务器上的操作系统、数据库以及中间件等资源进行监控。

监控系统资源指标,在测试中,根据测试需求以及测试环境的变化,选取有意义的数据进行分析。

3、大数据量

例如:考虑系统未来发展需要的存储空间,添加大数据量测试。

主要包括两方面内容:

①.单独的数据量测试;

②.与并发性能测试相结合的综合测试。

测试数据的准备借助于测试数据管理与生成工具,例如FileAid。

4、速度

例如:磁盘访问速度、备份速度以及网络办公系统运行速度等(人工测试)

5、疲劳测试

通常是采用系统稳定运行情况下能够支持的最大并发用户数,持续执行一段时间业务,通过综合分析执行指标和资源监控指标来确定系统处理最大工作量强度性能的过程。

四、性能测试指标 

一般有2种形式描述:产品需求指标和系统的性能指标。

1、产品需求指标

①.给出产品性能的主要指标,如在100000记录中查询一个特定数据的时间为0.5秒;

②.以某个已发布的版本为基线,如比上一个版本的性能提高30-50%;

③.和竞争对手的同类产品比较。

2、系统的性能指标

①.CPU利用率;

②.内存占用率;

③.磁盘I/O ;

④.响应时间。

五、性能测试的策略

性能测试策略一般从需求设计阶段开始讨论制定,策略的内容决定着性能测试工作投入多少资源、什么时间开始实施等后继工作如何安排。制定性能测试的策略的因素:

1、预期的指标性能的因素

系统在需求分析、设计阶段和产品说明书等文档中明确的提出都性能指标,这些指标是性能测试要完成的工作。

2、独立业务性能测试的因素

独立业务主要是指软件产品的模块具有独立业务功能,在需求阶段就可以确定,要单独测试其性能。

3、业务性能组合测试的因素

应用类软件系统通常不会使所有的用户只使用一个或者几个核心业务模块,可能是对多个业务进行组合使用,对多个业务进行组合性能测试。由于组合业务测试是最能反映

用户使用系统情况,因而业务性能组合测试是测试的核心内容。

4、疲劳强度性能测试

疲劳强度测试是在系统稳定运行下模拟较大的用户数量、并长时间运行系统的测试,通过综合分析执行指标和资源监控来确定系统处理最大业务量时的性能,主要目的是为了测试系统的稳定性。

5、大数据量性能测试的因素

大数据量测试是为了测试系统的业务处理能力进行的。第一种是针对某些系统存储、传输、统计查询等业务进行大数据量的测试,主要是测试数据增多时的性能情况;

第二种是极限状态下数据测试,主要指系统数据量达到一定程度时,通过性能测试来评估系统的响应情况,测试对象是某些核心业务或者日常常用的组合业务。

6、网络性能测试的因素

网络性能测试主要是为了准确展示带宽、延迟、吞吐量、负载、瓶颈和端口的变化是如何影响用户的响应时间的。重点测试吞吐量指标,因为80%的系统性能瓶颈由吞吐量造成。

六、性能测试的方法

性能测试方法主要有:能力验证、规划性能、性能调优、压力加载、性能下降曲线分析。

1、能力验证

 能力验证强调:系统具备的硬件设备、软件环境、网络条件、基础数据。能力验证使用到可靠性测试、压力测试、失效恢复测试 。

2、规划性能

 规划性能关心的是要求系统具有的性能,强调系统配置,使系统能够满足增长的用户数的需要等问题。规划性能使用到负载测试、配置测试、压力测试。

3、性能调优

性能调优关心的是要求系统确定基准环境、基准负载和基准性能指标;调整系统运行环境和实现方法;记录测试结果、进行测试分析。

4、压力加载

压力加载强调:

①.稳定压力加载。一次性将负载加到某个水平,持续一段时间; 

②.逐渐加载或交替加载到某个负载水平; 

③.峰谷测试。确定从系统高峰时间的负载转为几乎空闲、再攀升到高负载这样峰值交替情况下的系统性能状态/指标。

5. 性能下降曲线分析 

性能下降曲线分析关心的是性能随着用户数的增加而出现下降趋势的曲线分析、查看性能下降的环境点与上下文。确定性能阀值。性能曲线通过单用户区域、

性能平坦区域、压力区域、性能拐点进行监控和分析。

标签:负载,性能,系统,用户,并发,测试用例,测试
From: https://blog.csdn.net/m0_58552717/article/details/141829939

相关文章

  • Python 实现行为驱动开发 (BDD) 自动化测试详解
    什么是BDD?行为驱动开发(BDD,Behavior-DrivenDevelopment)是一种软件开发过程,旨在通过鼓励协作和沟通,提高软件质量。BDD的核心理念是用自然语言描述软件的行为,使得业务人员、开发人员和测试人员都能参与其中。BDD是由测试驱动开发(TDD,Test-DrivenDevelopment)演......
  • 《黑神话:悟空》193+MOD整合包,画质、性能、武器、人物替换、CT表、存档等
    全网收集整理了如下整合包内容,包含《黑神话:悟空》全成就解锁存档锐化补丁、低性能卡顿、画质补丁Xbox手柄图标替换为NsPro图标物品掉落MOD大地图MOD等。下载地址:点击进入如图所示: 以下应该是全网最全《黑神话:悟空》MOD了,一个99+,我罗列一下吧荒野大镖客2斧头替换金......
  • Java生产环境下性能监控与调优指南
    Java生产环境下性能监控与调优指南目录引言Java性能监控2.1性能监控工具2.2关键性能指标Java应用性能调优3.1内存调优3.2垃圾回收调优3.3多线程优化3.4数据库连接优化3.5代码级优化结语1.引言在Java应用的生产环境下,性能监控及调优显得至关重要,它们......
  • 【Java】—— Java面向对象进阶:Java中的账户管理-基础账户与可透支账户的实现与测试
    目录1.基础账户类(Account)2.测试基础账户类3.可透支账户类(CheckAccount)4.测试可透支账户类运行结果1.基础账户类(Account)        写一个名为Account的类模拟账户。该类的属性和方法如下图所示。该类包括的属性:账号id,余额balance,年利率annualInterestRate;......
  • 性能测试概念
    性能测试概念要能落地。并发:默认多个人同时请求。性能测试中,用1个线程,循环请求100次。------自动测试100个线程,并发请求1次。-----性能测试得到性能指标:但是,性能测试,不是为了冷冰冰的指标数据,而进行的。通过数据的意义,发现数据背后,可能存在的性能问题,并进行性能优化。性能要......
  • 达梦存储过程性能问题定位
    在达梦数据库中可以通过V$DMSQL_EXEC_TIME和debug方式来定位存储过程存在的性能问题,但V$DMSQL_EXEC_TIME往往定位比较粗糙,没法定位到存储过程中sql的执行时间,而debug可以点位具体某段sql,但如果存储过程里面有大量游标,参数变量值很多的情况下,debug调试也花费大量时间,下面介绍使用日......
  • 迅为电子RK3588S开发板第三章Buildroot系统功能测试
      iTOP-3588S开发板采用瑞芯微RK3588S处理器,是全新一代AloT高端应用芯片,采用8nmLP制程,搭载八核64位CPU(四核Cortex-A76+四核Cortex-A55架构),集成MaliG610MP4四核GPU,内置AI加速器NPU,算力达6Tops,支持8K视频硬件编码器和硬件解码器,提供了许多功能强大的嵌入式硬件引擎,性能更强......
  • 6.2K star!推荐一款开源混沌工程测试平台:Chaos Mesh
    1、ChaosMesh介绍ChaosMesh是一个开源的混沌工程平台,旨在帮助用户在生产环境中测试、验证和优化其应用程序的可靠性和稳定性。通过引入故障注入和混沌工程原则,ChaosMesh可以模拟各种故障场景,如网络延迟、节点故障、磁盘故障等,以帮助用户发现和解决系统中的潜在问题。项目地址:ht......
  • 关于Window操作系统中对Oracle的性能监控
    目的本文是为了测试数据仓库的实时数据抽取功能对源数据库和操作系统的性能的影响。由于Windows操作系统未提供类似于UNIX下的Top、ps、vmstat等CPU、内存、I/O监控工具,同时Oracle作为操作系统下的一个唯一进程而存在,这就导致windows操作系统在监控Oracle方......
  • LongWriter环境安装&推理测试
    ​引子一口气生成2万字,大模型输出也卷起来了!清华&智谱AI最新研究,成功让GLM-4、Llama-3.1输出长度都暴增。相同问题下,输出结果直接从1800字增加到7800字,翻4倍。大模型的生成内容一般都不会太长,这对于内容创作、问题回答等都存在影响,可能导致模型回答问题不全面、创造性能降低等。L......