-
2.4 不同角色看性能
技术部门的人员不同,看待测试的角度也就不同。以下是站在不同角度去看待系统的观点:
1、黑盒测试角度
应用界面 —— 》 数据请求经过网络发送 —— 》 服务器前端接收处理 —— 》 在DB server获取相关数据 —— 》 前端处理后返回数据 —— 》应用界面收到数据响应下一步
黑盒测试只关心应用程序的单步响应时间,性能好坏就看应用时间的多少,也就是数据流经过服务器/服务器集群经过网络传输后往返的时间总和;
2、开发角度
架构合理性、数据库设计合理性、代码、系统里内存的使用方式、系统里线程使用方式等;
3、系统管理员角度
硬件资源利用率、JVM、DB、更换那些硬件能提高系统性能、系统能否支持7*24的服务、扩展性,兼容性,最大容量,可能的瓶颈;
4、性能测试的角度
(1)服务器硬件性能
(2)根据需求和历史数据制定性能目标
(3)建立性能通过模型
(4)对开发代码框架和硬件框架进行性能分析
(5)针对开发发布版本的基准测试
(6)执行软件性能验收及稳定性测试
(7)生产环境的配置和优化
(8)制定性能测试的测试用例
(9)指定性能测试的场景设计
(10)协调各部门配合
(11)特定的性能分析
-
2.5、性能测试工具的选择
1、对于性能测试来说,工具并不是核心,分析、评估、找出性能问题才是核心;工具只是客观因素,要降低工具对结果的影响,选择工具时需要考虑以下几个方面:
(1)专业、稳定、高效,例如:Loadrunner,工业级性能负载工具;
(2)简单易上手,在测试脚本上不用花太多时间;
(3)有技术支持,文档完善,不用在疑难问题上花费时间,集中精力在性能分析上;
(4)要考虑投入产出比;
2、常见性能工具
(1)HP公司的LoadRunner;
(2)Apache JMeter(开源);
(3)Grinder(开源);
(4)Compu Ware公司的QALoad;
(5)Microsoft公司的WAS;
(6)RadView公司的WebLoad;
(7)IBM公司的RPT;
等;
比较商用工具与自研发及开源工具:
工具只是手段,重要的还是测试性能。
-
2.6、性能测试相关术语
(1)负载:模拟业务操作对服务器造成压力的过程;
(2)性能测试(Performance Testing):模拟用户负载来测试系统在负载情况下,系统的响应时间、吞吐量等指标是否满足性能需求;
(3)负载测试(Load Testing):在一定硬件环境下,通过不断加大负载(不同虚拟用户数)来确定在满足性能指标情况下能够承受的最大用户数;
(4)配置测试(Configuration Testing):为了合理地调配资源,提高系统运行效率,通过测试手段来获取、验证、调整配置信息的过程;
(5)压力/强度测试(Stress Testing):在一定软硬件环境下,通过高负载的手段来使服务器资源(强调服务器资源,硬件资源)处于极限状态,测试系统在极限状态下时间运行是否稳定,稳定的指标有:TPS、RT、CPU Using、Mem Using等;
(6)稳定性测试(Endurance Testing):在一定软硬件环境下,长时间运行一定负载,确定系统在满足性能指标的前提下是否运行稳定;与压力测试的区别是:负载测试并不强调是在极限状态下,着重是满足性能要求下,系统的稳定性、比如响应时间是否稳定、TPS是否稳定。一般负载会在满足性能要求的情况下加大1.5 ~ 2倍的负载;
(7)TPS:每秒完成的事务数,性能测试的一个重要的综合性能指标;
(8)RT/ART(Reponse Time / average Reponse Time):响应时间/平均响应时间,指一个事务花费多长时间完成(多长时间响应客户请求),为了使响应时间更具有代表性,会统计平均值;
(9)PV(Page View):每秒用户访问页面的次数;
(10)Vuser虚拟用户:模拟真实业务逻辑步骤的虚拟用户,虚拟用户模拟的操作步骤都被记录在虚拟用户脚本里;
(11)Concurrency并发
1、狭义并发:所有的而用户在同一时刻做同一件事情或操作;强调对系统的请求操作是完全相同的,多适用于性能测试、负载测试、压力测试、稳定性测试场景;
2、广义并发:多个用户对系统发出了请求或者进行了操作,不限制对系统请求操作,多适用于混合场景、稳定性测试场景;
(12)场景(Scenario):性能测试过程中为了模拟真实用户的业务处理,在LoadRunner中构建的基于事务、脚本、虚拟用户、运行设置、运行计划、监控、分析等的一系列动作的集合,称之为性能测试场景;
(13)思考时间(Think Time):模拟正式用户在实际操作时的停顿间隔时间;从业务的角度来讲,思考时间指的是用户在进行操作时,每个请求之间的间隔时间;
(14)标准差(Std Deviation):该标准差根据数理统计的概念得来,标准差越小,说明波动越小,系统越稳定,反之,标准差越大,波动越大,系统越不稳定;
-
2.7、性能测试通过标准
1、性能测试包括:服务端性能、前端性能、用户体验性能;
-
2.8、性能测试趋势
第二章学习完了~
以上内容摘抄于《全栈性能测试修炼宝典JMeter实战》书本~