性能测试要点及用例.docx
- 文档编号:28742067
- 上传时间:2023-07-19
- 格式:DOCX
- 页数:19
- 大小:163.82KB
性能测试要点及用例.docx
《性能测试要点及用例.docx》由会员分享,可在线阅读,更多相关《性能测试要点及用例.docx(19页珍藏版)》请在冰豆网上搜索。
性能测试要点及用例
一、性能测试要点及用例模板
1、性能测试团队成员职责技能描述
角色
职责
技能
测试经理
1.和用户等项目干系人交互,确保测试的外部环境
2.制定测试计划
3.监控测试进度
4.发现和处理测试中的风险
1.计划执行和监控能力
2.风险意识和能力
3.外交能力和灵活变通的能力
测试设计
1.定义性能规划
2.识别用户的性能需求
3.建立性能场景
1.业务把握能力
2.性能需求分析和识别能力
测试开发
1.实现已设计的性能场景
2.脚本开发、调试
3.确定测试时需要监控的性能指标、性能计数器
1.脚本编码和调试能力
2.理解性能指标和性能计数器
测试执行
1.部署测试环境
2.执行脚本和场景
3.根据监控要求记录测试结果、记录性能指标和性能计数器值
1.搭建测试环境的能力
2.测试工具使用(执行)的能力
3.性能指标和性能计数器值获取和记录的能力
测试分析
1.根据测试结果、性能指标的数值、性能计数器值进行分析
2.能根据性能规划,分析出系统性能瓶颈、或量给出优化建议
1.掌握性能测试工具的使用方法
2.掌握应用系统性能领域相关知识,理解所采用的架构
3.熟悉常用的性能分析方法
4.具有一定的编码经验
支持角色(系统)
系统支持,协助解决测试工程师无法解决的系统问题
处理系统问题的能力和技能,最好由专职的系统管理员担任这个角色
支持角色(网络)
网络方面的支持,协助测试工程师解决网络方面的问题,在必要时为测试分析角色提供网络方面的分析支持
网络方面的能力和技能,最好由专职的网络管理员担任这个角色
支持角色(数据库)
数据库方面的支持,在必要时为测试角色提供数据库方面的支持
数据库方面的能力和技能,最好由专职的DBA担任这个角色
2、性能测试工具需求规划表
被测试系统环境
测试工具功能需求建议
操作系统环境
测试工具是否能运行在本操作系统上
测试工具是否支持对本操作系统的监控
应用服务器环境
测试工具能否支持对本应用服务器的监控
数据库环境
测试工具能否支持本数据库的监控
应用使用的协议
本系统使用了哪些协议
哪些协议需要在性能测试中通过工具进行录制和产生负载
测试工具能否支持需要进行录制和产生负载的协议
网络环境
是否需要测试工具支持防火墙
是否需要测试工具支持负载均衡
测试管理支持
测试工具是否能够提供方便的测试结果分析和管理
3、性能测试环境调查表
性能测试环境
描述
系统架构描述
系统技术架构描述
系统物理架构描述
服务器需求
服务器类别和数量
每台服务器的配置(CPU、内存、磁盘、操作系统(含参数)、应用软件)
客户端环境
使用的浏览器/客户端应用版本
网络传输状况(限制)
吞吐量估算
4、典型业务列表
功能
所属模块
访问路径
备注
5、业务用例描述
Case编号
测试类型
简短描述
客户需求列表
软件需求编号
场景引用列表
测试优先级
前置条件
测试步骤
参数化需求
验证点
创建人
创建时间
备注
6、场景列表
场景名称
场景业务及用户比例分配
测试指标
性能计数器
用户登录
登陆业务,100%用户
总用户数200人
响应时间(<5s)
服务器CPU使用率
服务器内存使用率
标准日常工作
入账业务,40%用户
查询业务,30%用户
统计业务,30%用户
总用户数200人
响应时间
(入账<6s)
(查询<5s)
(统计<10s)
服务器CPU使用率
服务器内存使用率
…………
…………
…………
…………
…………
…………
…………
…………
7、测试计划
1.引言
1.1编写目的
2.参考文档
3.测试目的
4.测试范围
4.1测试对象
4.2需要测试的特性
4.3无需测试的特性
5.测试启动与结束准则
5.1启动准则
5.2结束准则
6.测试方法
6.1测试工具
6.2测试设计
6.3测试用例与测试场景
7.测试类型
7.1能力验证测试
7.2容量规划测试
7.3稳定性测试
8.测试环境维护原则
9.测试输出
10.测试资源需求与时间计划
8、测试环境检查
条目名称
检查内容
责任人
维护方法
硬件环境
硬件环境是否与拓扑描述一致
硬件拓扑结构图
软件环境
软件环境是否与软件环境列表中描述一致
软件环境列表
应用部署是否成功
应用部署检查
测试辅助工具是否部署成功
测试辅助工具部署检查
软件参数设置是否符合要求
软件参数设置表
数据环境
数据是否与数据要求描述表中描述一致
数据要求描述表
上次测试是否引入了额外的数据而没有清除
数据维护脚本或是Import方式
9、测试执行记录日志
日期
标题
测试内容
结果
测试人
10、性能测试分析报告
1.测试背景
2.测试目的
3.测试概要描述
3.1被测系统描述
3.2测试时间
3.3测试地点
3.4测试人员
3.5测试工具和环境
3.6测试方案简介
4.测试结果和结论
4.1测试结论
4.2测试结论的限制
4.3对系统的建议
5.原始数据和报告
5.1测试执行记录
5.2原始数据文件
5.3测试工具生成的报告
11、性能测试应用领域与测试方法的关联
能力验证
规划能力
性能调优
发现缺陷
PerformanceTesting
性能测试
★
LoadTesting
负载测试
★
★
StressTesting
压力测试
★
★
★
★
ConfigurationTesting
配置测试
★
★
ConcurrencyTesting
并发测试
★
ReliabilityTesting
可靠性测试
★
FailoverTesting
失效恢复测试
★
★
★
12、常用的性能测试过程
13、并发测试主要关注的问题(常用的测试方法)
问题类别
问题描述
内存问题
是否有内在泄漏(C/C++)
是否有太多的临时对象(Java)
是否有太多的超过设计生命周期的对象(Java)
数据库问题
是否有数据库死锁(DeadLock)
是否经常出现长事务(LongTransaction)
线程/进程问题
是否出现线程/进程同步失败
其它问题
是否出现资源争用导致的死锁
是否没有正确处理异常(例如超时等)导致系统死锁
14、性能调优的标准过程示例图
15、性能测试脚本录制时的协议类型
应用类型
应用特点
建议选用协议
备注
Web应用
应用采用ASP结构、J2EE或是.Net架构
HTTP/HTTPS协议
Web应用一般采用Http/Https协议进行性能测试脚本录制,但特别要指出的是,有些借助客户端运行的组件采用自定义Socket或是其他协议与服务器进行通信,此时需要在录制时选择多种协议
C/S应用
客户端程序以ADO、Oledb方式连接后台数据库
根据后台数据库类型选择相应协议
例如,如果后台数据库是Oracle,则在录制时选择Oracle协议
客户端程序ODBC方式连接后台数据库
ODBC协议
无
客户端和服务器之间通过自定义的Socket协议进行通信
Socket协议
无
其它协议
根据具体协议类型进行分析
例如,有些应用为了能够适应复杂的广域网环境,采用HTTP协议为C/S结构应用的客户端和服务端之间的通信协议,此时可以根据具体的协议来选择录制使用的协议
组件
COM/DCOM
COM/DCOM
这里提到的是针对组件的测试,商业性能测试工具一般提供了一种直接测试组件接口性能的方法
EJB
EJB协议
服务
WebService
WebService
协议
有些人可能会用Http协议来录制对WebService服务进行性能测试的脚本,建议使用专门的WebService协议进行录制
Mail服务器
SMTP和POP
协议
无
FTP服务器
FTP协议
无
其它
根据具体的协议选择最接近的录制协议
无
应用服务器
OracleApplication
Server
OracleApplicationServer协议
无
SAP
SAP协议
无
Tuxedo
Tuxedo协议
无
其它
根据具体协议选择最接近的
无
16、不同应用领域的性能测试目标和性能目标
应用领域
性能测试目标
性能目标
能力验证
验证系统在给定环境中的性能能力
重点关注的关键业务响应时间、吞吐量
规划能力
验证系统的性能扩展能力,找出系统能力扩充的关键点,给出改善其性能扩展能力的建议
业务的性能瓶颈
性能调优
提高系统的性能表现
重点关注的关键业务响应时间,吞吐量
发现缺陷
发现系统中的缺陷
无
17、Windows操作系统主要计数器
类别
计数器名称
计数器描述
Memory
AvailableMbytes
可用物理内存数
Pages/sec
表明由于硬件页面错误而从磁盘取出的页面数,或由于页面错误而写入磁盘以释放工作集空间的页面数
PagesRead/sec
页的硬故障,Pages/sec的子集,为了解析对内存的引用,必须读取页文件的次数.阈值为5.数值越低越好.大数值表示是磁盘读而不是缓存读
PageFaults/sec
此值为处理器中的页面错误的计数,当进程引用特定的虚拟内存页,该页不在其主内存的工作集当中时,将出现页面错误.如果某页已经位于内存中,或者它正在被共享该页的其他进程所使用,则页面错误不会导致该页从磁盘中读取
CacheBytes
文件系统缓存(FileSystemCache),默认情况下为50%的可用物理内存
Process
%ProcessorTime
被处理器消耗的处理器的时间数量。
如果是专用于某种特定应用(例如数据库服务器或是应用服务器),则可用应用相关进程%ProcessTime进行衡量,此时,可接受的上限一般不超过85%
PageFaults/sec
将进程产生的页故障与系统产生的相比较,以判断这个进程对系统页故障产生的影响
Workset
处理线程最近使用的内存页,反映了每一个进程使用的内存页的数量。
如果服务器有足够的空闲内存,页就会被留在工作集中,当自由内存少于一个特定的阈值时,页就会被清除出工作集
PrivateBytes
此进程所分配的无法与其它进程共享的当前字节数量。
如果系统性能随着时间而降低,则此计数器可以是内存泄漏的最佳指示器。
Processor
%ProcessorTime
如果该值持续超过95%,表明瓶颈是CPU,可以考虑增加一个处理器或换一个更快的处理器
%UserTime
非内核操作耗费的CPU时间。
一般来说,如果系统中使用了大量的算法或是复杂的计算操作,该值会比较大
%PrivilegedTime
Cpu内核时间是在特权模式下处理线程执行代码所花时间的百分比
%DPCTime
CPU消耗在网络处理上的时间,些值越低越好
PhysicalDisk
%DiskTime
指所选磁盘驱动器忙于为读或写入请求提供服务所用的时间的百分比
AverageDiskQueueLength
指读取和写入请求(为所选磁盘在实例间隔中列队的)的平均数。
该值应不超过磁盘数的1.5-2倍。
要提高性能,可增加磁盘。
注意:
一个Raiddisk实际有多个磁盘
AverageDiskRead/WriteQueueLength
指读取(写入)请求(列队)的平均数
DiskRead(Writes)/sec
物理磁盘上每秒种磁盘读、写的次数。
两者相加,应小于磁盘设备最大容量
AverageDisksec/Read
指以秒计算的在此盘上读取数据的所需平均时间
AverageDisksec/Transfer
指以秒计算的在此盘上写入数据的所需平均时间
NetworkInterface
BytesTotal/sec
为发送和接收字节的速率,包括帧字符在内。
判断网络连接速度是否是瓶颈,可以用该计数器的值和目前网络的带宽比较
System
%TotalProcessorTime
系统上所有处理器都忙于执行非空闲线程的平均时间的百分比,该值反映了用于有用作业上的时间的比率。
对单处理器系统来说,该值很容易理解;对多处理器系统来说,该值是体现了所有处理器的平均繁忙程度。
例如,如果所有处理器都繁忙,此值为100%,如果有一半的处理器繁忙,另一半处理器为安全空闲,此值为50%。
FileDataOperations/sec
计算机对文件系统设置执行读取和写入操作的速率。
本计数器的计数不包括文件控制操作
ProcessorQueueLength
线程单元中处理器队列的即时长度。
所有处理器都使用单一队列(线程在该队列中等待处理器进行循环)。
此长度不包括当前正在执行的线程。
一般情况下,如果处理器队列的长度一直超过服务器上可用处理器队列的长度一直超过服务器上可用处理器的总数量+1,则可能表示处理器堵塞。
18、Unix常用计数器
类别
计数器名称
计数器描述
Memory
Free(KB)
可用物理内存数
Swap(KB)
已使用的虚拟内存数量。
在Linux系统中。
该值被标识为Swap
(page)si
每秒从磁盘交换到内存的数量。
在Linux系统中,该值被放在Swap区中
(page)so
每秒从内存交换出的内存数量。
在Linux系统中,该值被放在Swap区中
Cache(KB)
文件系统缓存
Process
%CPUUsage
被处理器消耗的处理器时间数量。
如果是专用于某种特定应用(例如数据库服务器或是应用服务器)。
则可用应用相关进程的%ProcessorTime进行衡量,此时,可接受的上限一般是不超过85%
PageFaultscount
该进程产生的页面失效次数。
可以用该值与系统的页面失效的影响
Residentsize(KB)
进程保留的使用内存量。
该数值等于进程的代码使用内存十进程的数据使用内存。
如果该值在测试过程中持续增加,很可能意味着发生了内存泄漏。
Processor
%IdleTime
Idletime%描述的是CPU总的空闲时间。
如果该值持续低于10%,表明瓶颈是CPU。
可以考虑增加一个处理器或换一个更快的处理器
%UserTime
非内核操作耗费的CPU时间。
一般来说。
如果系统中使用了大量的算法或是复杂的计算操作,该值会比较大
%KernelTime
CPU内核时间是在特权模式下处理线程执行代码所花时间的百分比
%IOwaitTime
CPU消耗在等待IO处理上的时间,此值需要结合IO的计数器考虑
PhysicalDisk
Percentoftimethediskisbusy
指所选磁盘驱动器忙于为读或写入请求提供服务所用的时间的百分比
AveragenumberoftransactionsActivelybeingserviced
指读取和写入请求(为所选磁盘在实例间隔中列队的)的平均数。
该值应不超过磁盘数的1.5-2倍。
要提高性能,可增加磁盘。
在Iostat的结果中,该值显示为Actv
Averagenumberoftransactionswaitingforservice
指读取(写入)请求(列队)的平均数。
在Iostat的结果中,该值显示为wait
Reads(writes)persec
物理磁盘上每秒磁盘读、写的次数。
两者相加,应小于磁盘设备最大容量。
在Iostat的结果中,该值显示为r/s和w/s
Averageservicetimeactivetransactionsinmilliseconds
指以毫秒计算的在此盘上读取和写入数据的所需平均时间。
在Iostat的结果中,该值显示为asvc_t
Thenumberofdiskoperationspersecond
显示每个磁盘每秒的被操作次数。
该值在Vmstat的结果中显示
NetworkInterface
参见Unix的Snmp接口内容
参见Unix的Snmp接口内容
System
%UserTime
系统上所有处理器执行非内核操作的平均时间的百分比,该值反映了用于有用作业上的时间的比率
Cpucontextswitches
Cpu上下文切换。
在Vmstat的结果中,该值显示为cs
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 性能 测试 要点