关于性能测试需要知道的

随着各企业的业务发展、用户量以及数据量的不断增加,系统承载的压力也会随之增加,服务系统的性能好坏又严重影响企业的利益。因此,性能测试重要性与需求越来越强烈。,关于性能测试需要知道的,性能测试是确定系统在特定工作负载下的稳定性和响应能力。在进行性能测试之前,首先是要明确性能测试的目的,目的不同,对应的解决方案会有很大差异,最常见的性能测试目的(或契机)有三种:,性能测试的三种目的,(1) 评测当前系统性能,通过性能测试了解系统当前的性能是否达到预期。例如:新系统上线前、技术升级后,都会进行性能测试,确保系统在线上稳定可靠地运行。,(2) 寻找瓶颈,优化性能,系统已知有性能问题,进行测试寻找瓶颈,以便优化其性能。例如:用户提出业务操作响应时间长,需要定位问题,调整性能;系统运行一段时间后,速度变慢,寻找瓶颈,进而优化,(3) 预测系统未来的性能、可扩展性,通过性能测试预测系统在未来达到一定负载量的情况下,系统的性能表现。为的是提前预防并降低风险。扩展能力非常好的系统,性能是随资源扩展呈线性或接近线性提升。,性能测试的不同类型,(1) 基准测试,基准测试:系统较低压力时,查看系统的运行状况并记录相关数作为基础参考。,(2) 负载测试,负载测试是通过逐渐增加系统负载,测试系统性能的变化,并最终确定在满足性能指标的情况下,系统能承受的最大负载量的测试。目标:确定系统的性能容量(如系统在保证一定响应时间情况下能够允许多少并发用户的访问),系统各项指标,如吞吐量、响应时间、CPU负载、内存使用等如何决定系统的性能。,(3) 压力测试,压力测试通过确定一个系统的瓶颈或者不能接受的性能点,来获得系统能提供的最大服务级别的测试。目标:压力测试是为了发现在什么条件下您的应用程序的性能会变得不可接受。,(4) 并发性能测试,负载测试和压力测试通常被合称为并发性能测试。即大并发场景下的系统性能,多用户同时访问时,检测系统是否能够稳定运行。,(5) 大数据量测试,大数据量测试包括独立的数据量测试和综合数据量测试。独立的数据量测试指针对某些系统存储、传输、统计、查询等业务进行的大数据量测试。综合数据量测试指系统在具备一定数据量时,在负载压力测试下,考察业务是否能够正常运行的测试。目标:测试数据量较大时系统的性能状况。,(6) 容量测试,容量测试的目的是通过测试预先分析出反映软件系统应用特征的某项指标的极限值(如最大并发用户数),系统在其极限状态下没有出现任何软件故障且能正常运行。,(7) 配置测试,通过对被测系统软硬环境的调整,了解各种不同环境对系统性能的影响程度,从而找到系统各项资源的最优分配原则。,(8) 稳定性测试,稳定性是通过给系统加载一定的压力,让系统持续运行一段时间(通常为7×24小时),检测系统是否能够稳定运行。稳定性测试也称为疲劳强度测试,属于可靠性测试的范畴。目标:测试系统长时间无故障稳定运行的能力,(9) 失效恢复测试,失效恢复测试是针对有冗余备份或负载均衡的系统来说,检验如果系统局部发生故障,系统灾备措施是否可以正常启动,用户是否可以继续使用。(如:集群、热备等) 目标:通过实施失效恢复测试,评估系统的健壮性和可恢复性。,在实际项目当中,可根据不同的性能测试目的,选相对应的性能测试方式。,在进行各类性能测试时,需要同步检测系统各项性能指标,从而分析系统的实际的响应能力与稳定性等。常用的性能监测指标有四类:业务性能指标、资源性能指标、中间件监测指标、数据库监测指标。,图片,(1) 响应时间行业标准,(2) TPS行业标准,图片,图片,资源性能(CPU、内存、磁盘)行业标准:,中间件监测指标主要包括JVM、线程池、JDBC连接池,常用的中间件如:Tomcat、Weblogic等。,图片,中间件监控内容及行业标准:,图片,数据库监控内容及行业标准:,首先要制定测试计划,明确目的、策略等。以测试计划为依据,逐步开展性能测试工作。,图片,确定本次性能测试的目标,包括性能测试对象、需求范围,以及性能指标达标要求,即测试退出条件。,确定了测试对象和测试需求之后,需要制定一份性能测试计划,指导性能测试工作的进行。包括:简介、测试环境、测试场景、测试数据、测试策略、测试时间与人员安排。,(1) 测试环境,描述性能测试环境的物理架构。,(2) 测试场景,针对各业务功能模块,设计不同测试类型(稳定性测试、负载测试、压力测试)等的单场景、组合场景测试。,(3) 测试数据,描述各性能测试场景下的数据量要求,加压多大数据量需要提前与业务侧对齐目标,系统现存数据体量以及每年增长幅度也可以通过与业务人员(产品经理)确定,当然也可以一些经验方法或公式来估算。比如:有并发用户数与峰值公式,以及二八原理估算方法。,图片,(4)性能测试策略,描述性能测试方法和流程与工具等。需要进行哪几种类型的测试。,(5) 测试时间与人员安排,描述参与性能测试的人员,以及性能测试时间计划。,依据性能测试计划进行实施测试,准备测试环境、构造测试数据 、执行测试用例 、记录测试结果。在此过程中,如发现性能问题,提交Bug,修正Bug。,图片,完成性能测试之后,编写性能测试报告,整理总结本次性能测试的背景、目的、测试范围、测试指标需求、测试环境与工具、测试内容、测试结果与分析等。,其中测试结果与分析主要是罗列测试指标结果数据及图表,并且对测试的结果及发现的性能问题进行总结、分析。性能测试报告样例参见下图:,图片,为了更高效的进行性能测试,选用适合的测试工具非常关键,下面列举了一些常用的性能测试工具供参考。,图片

文章版权声明

 1 原创文章作者:cmcc,如若转载,请注明出处: https://www.52hwl.com/18781.html

 2 温馨提示:软件侵权请联系469472785#qq.com(三天内删除相关链接)资源失效请留言反馈

 3 下载提示:如遇蓝奏云无法访问,请修改lanzous(把s修改成x)

 免责声明:本站为个人博客,所有软件信息均来自网络 修改版软件,加群广告提示为修改者自留,非本站信息,注意鉴别

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023年3月5日 上午12:00
下一篇 2023年3月7日 下午10:34