全栈性能测试修炼宝典--Jmeter实战(二)

性能测试初体验

1、测试分类

  从图中可以看出,性能测试在整个软件测试环节中占了50%的内容,比如负载测试、压力测试、性能测试、大数据量测试、恢复测试、内容泄露测试、竞品测试(比较测试)和可靠性测试。

2、性能测试流程

  

  (1)业务学习:通过查看文档,手动操作系统来来了解系统性能;

  (2)需求分析:分析系统非功能需求,圈定性能测试的范围,了解系统的性能指标;

  (3)工作评估:工作量分解,评估工作量,计划资源投入;

  (4)设计模型:圈定性能测试范围后,把业务模型映射成测试模型;

  (5)计划编写:计划测试工作,在文档中明确列出测试范围、人力投入、持续时间、工作内容、风险评估、风险应对策略等;

  (6)脚本开发:录制或者编写性能测试脚本;

  (7)测试环境准备:性能测试环境准备包括服务器与负载机两部分,服务器是被测系统的运行平台,负载机是我们用来生产负载的机器,用来安装负载工具,运行测试脚本;

  (8)测试数据准备:根据测试模型来准备被测系统的主数据与业务数据;

  (9)测试执行

  (10)缺陷管理:对性能测试过程中发现的缺陷进行管理;

  (11)性能分析:对性能测试过程中暴露出来的问题进行分析,找出原因;

  (12)性能调优:性能测试人员与开发人员一起来解决性能问题;

  (13)测试报告:测试工作的重要交付文件,对测试结果进行报告,主要包括性能指标说明(tps、rt、cpu等);

  性能测试主要交付件:

1 测试计划
2 测试脚本
3 测试程序
4 测试报告或者阶段性测试报告

  (14)评审:对性能报告中的内容进行评审,确认问题,评估上线风险。

3、性能测试成功与失败要素

  重点关注点:

1 评估系统,需求分析
2 场景设计、用例设计
3 测试执行、是否通过
4 性能诊断优化

  (1)评估系统,需求分析

  对性能测试进行需求分析,通常情况下测试人员会直接依赖需求人员或者项目经理的口述或者有缺陷的文档。实际上,大多数情况下我们测试人员需要自己来引导相关的运维人员和需求人员给出具体的需求数据,并对这些数据进行二次分析,得出我们真实的性能需求。

  对于初次上线的系统,我们需要使用同行的系统数据,进行用户行为分析和商业数据结构的估算为前提,利用性能估算法推算。得到的负荷和响应时间数据可以被应用于验证所计划的模型的能力,并帮助做出对策。

  对于已经上线的系统,我们可以通过运维人员获取TPS和时间的比例分布图、用户数和时间的分布图、数据库ER关系图、容量数据等,直接精确得出目前系统的用户行为和业务数据关系,进而得出我们需要的性能需求。

  (2)场景设计、用例设计

  (3)测试执行、是否通过--需要关注的指标

  

  (4)性能诊断优化

4、不同角色看性能

  技术部门一般有下面几种角色:开发、测试、架构师、运维人员、(系统管理员、DBA)

  (1)黑盒测试的角度

  黑盒测试只关心应用程序的单步响应时间,性能好坏就看应用时间多少,也就是数据流经过服务器、服务器集群经过网络传输后往返的时间总和。

  (2)开发角度

1 架构合理性
2 数据库设计合理性
3 代码
4 系统内存的使用方式
5 系统线程使用方式
6 系统资源是否有恶性,不合理竞争

  (3)系统管理员角度

1 硬件资源利用率
2 JVM
3 DB
4 系统是否支持7*24的服务
5 扩展性,兼容性,最大容量,可能的瓶颈

  (4)性能测试的角度

 1 服务器硬件的性能
 2 根据需求和历史数据制定性能目标
 3 建立性能通过模型
 4 对开发代码框架和硬件框架进行性能分析
 5 针对开发发布版本的基准测试
 6 执行软件性能验收及稳定性测试
 7 生产环境的配置及优化
 8 制定性能测试的测试用例
 9 制定性能测试的场景设计
10 协调各部门配合
11 特定的性能分析

5、性能测试相关术语

  (1)负载:模拟一万五操作对服务器造成压力的过程,比如模拟100个用户进行发帖。

   (2)性能测试(Performance Testing):模拟用户负载来测试系统在负载情况下,系统的响应时间,吞吐量等指标是否满足性能需求。

  (3)负载测试(load Testing):在一定软硬件环境下,通过不断加大负载(不同虚拟用户数)来确定在满足性能指标情况下能够承受的最大用户数。这些性能指标包括:TPS(每秒事务数)、RT(事务平均响应时间)、CPU using(CPU利用率)、MEM using(内存使用率)等软硬件指标。

  (4)配置测试(Configuration Testing):为了合理地调配资源,提高系统运行效率,通过测试手段来获取、验证、调整配置信息的过程。

  (5)压力测试\强度测试(Stress Testing):在一定软硬件环境下,通过高负载的手段来使服务器资源处于极限状态,测试系统在极限状态下长时间运行是否稳定,确定是否稳定的指示包括TPS、RT、CPU using、MEM using等。

  (6)稳定性测试(Endurance Testing):在一定软硬件环境下,长时间运行一定负载,确定系统在满足性能指标的前提下是否运行稳定。一般我们会在满足性能要求的负载情况下加大1.5倍-2倍的负载量进行测试。

  (7)TPS:每秒完成的事务数,通常指每秒成功的事务数,性能测试中重要的综合性性能指标。一个事务是一个业务度量单位,有时一个事务会包括多个子操作,为了统计方便,会把着多个子操作记为一个事务。

  (8)RT/ART(Response Time\average response time):响应时间/平均响应时间,指一个事务花费多长时间完成,一般取平均响应时间。

  (9)PV(page view):每秒用户访问页面的次数,此参数用来分析平均每秒有多少用户访问页面。

  (10)Vuser虚拟用户(Virtual user):模拟真实业务逻辑步骤的虚拟用户,虚拟用户模拟的操作步骤都被记录在虚拟用户脚本里。Vuser脚本用语描述Vuser在场景中执行的操作。

  (11)Concurrency并发,并发分为狭义和广义两类。狭义的并发,即所有用户在同一时刻作品同一件事情或者操作;广义的并发,即多个用户进行完全一样的操作。

  (12)场景(Scenario):性能测试过程中为了模拟真实用户的业务处理过程,在loadrunner中构建的基于事务、脚本、虚拟用户、运行设置、运行计划、监控、分析等一系列动作的集合,称之为性能测试场景。场景中包含了待执行脚本、脚本组、并发用户数、负载生成器、测试目标、测试执行时的配置条件等。

  (13)思考时间(Think Time):模拟真实用户在实际操作时的停顿间隔时间。也就是说,用户在进行操作时,每个请求之间的间隔时间。

  (14)标准差(Std. Deviation):标准差越小,说明波动越小,系统越稳定。

6、性能测试通过标准

 

转载于:https://www.cnblogs.com/feifei-cyj/p/7746389.html

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
全栈性能测试修炼宝典 JMeter实战》是软件测试领域里程碑式的重要著作,由多位培养出经理级乃至总监级性能高手的大师联手创作,本书深入讲解了性能测试实践操作过程中诸多难题的调优心法,实现从理论到实操的升华。列出自学所需的性能技能目录树,助力测试小白迅速成长为技术大牛。从脚本到运维、公式到指标的运用掌握应有尽有,手把手教你性能测试技巧。此书在手,助你走出迷茫。   内容推荐   “基础篇”:欲练神功,不必自宫。打我基础,从此坦途。   “工具篇”:欲善其事,先利其器。神剑在手,天下任走。   “实践篇”:练武无功,到老皆空。有武有功,江湖轻松。   “提升篇”:江湖之大,无奇不有。融会贯通,相忘江湖   首部分:基础篇   帮助初学者或想踏入这个行业的工程师迅速了解除工具以外的性能测试的真实本质。去伪求真,使读者能够把握性能测试要点和难点及职业规划有进一步的认识。不管你是内行还是外行,读完后必有所获。   第部分:工具篇   可当JMeter工具书来进行查阅,是市面上目前为止比较全面的JMeter讲解工具。学会热门的负载工具JMeter,对各种常见协议的性能测试工作(包括自动化测试) 测试脚本不用愁。   第三部分:实践篇   可学到Linux、Windows平台的性能监控、诊断分析;炼就火眼金睛,见微知著的技能;性能问题快速定位。   适合中高级性能测试工程师阅读,掌握性能分析方法,学会如何调优,了解当前的性能调优手法。   可跟书中实例操作,掌握性能测试整个过程,包括需求分析、测试计划、脚本开发、测试数据制作、测试执行、测试结果诊断分析、性能调优整个过程,真正能够开始进行性能测试工作。   第四部分:提升篇   性能测试自动化(Jenkins+Ant+JMeter),能够很方便的实现性能测试回归。提高产率,更少的人力,更低的功耗,更高的生产率;老板怎么爱你都不算多。   另外,前端的性能表现会直接影响到客户体验,前端性能测试也将成为新的性能点,读者可以更深层的了解此方面的知识。
全栈性能测试修炼宝典 JMeter实战》是软件测试领域里程碑式的重要著作,由多位培养出经理级乃至总监级性能高手的大师联手创作,本书深入讲解了性能测试实践操作过程中诸多难题的调优心法,实现从理论到实操的升华。列出自学所需的性能技能目录树,助力测试小白迅速成长为技术大牛。从脚本到运维、公式到指标的运用掌握应有尽有,手把手教你性能测试技巧。此书在手,助你走出迷茫。   内容推荐   “基础篇”:欲练神功,不必自宫。打我基础,从此坦途。   “工具篇”:欲善其事,先利其器。神剑在手,天下任走。   “实践篇”:练武无功,到老皆空。有武有功,江湖轻松。   “提升篇”:江湖之大,无奇不有。融会贯通,相忘江湖   首部分:基础篇   帮助初学者或想踏入这个行业的工程师迅速了解除工具以外的性能测试的真实本质。去伪求真,使读者能够把握性能测试要点和难点及职业规划有进一步的认识。不管你是内行还是外行,读完后必有所获。   第部分:工具篇   可当JMeter工具书来进行查阅,是市面上目前为止比较全面的JMeter讲解工具。学会热门的负载工具JMeter,对各种常见协议的性能测试工作(包括自动化测试) 测试脚本不用愁。   第三部分:实践篇   可学到Linux、Windows平台的性能监控、诊断分析;炼就火眼金睛,见微知著的技能;性能问题快速定位。   适合中高级性能测试工程师阅读,掌握性能分析方法,学会如何调优,了解当前的性能调优手法。   可跟书中实例操作,掌握性能测试整个过程,包括需求分析、测试计划、脚本开发、测试数据制作、测试执行、测试结果诊断分析、性能调优整个过程,真正能够开始进行性能测试工作。   第四部分:提升篇   性能测试自动化(Jenkins+Ant+JMeter),能够很方便的实现性能测试回归。提高产率,更少的人力,更低的功耗,更高的生产率;老板怎么爱你都不算多。   另外,前端的性能表现会直接影响到客户体验,前端性能测试也将成为新的性能点,读者可以更深层的了解此方面的知识。
全栈性能测试修炼宝典JMeter实战》是一本关于使用JMeter进行性能测试的实用指南。该书通过对JMeter工具的介绍和详细的实践示例,帮助读者掌握全栈性能测试的技能。 JMeter是一款开源的性能测试工具,具有强大的功能和灵活的使用方式。这本书从基础概念开始介绍JMeter的安装和配置,然后逐步深入介绍了性能测试的核心概念和关键步骤。作者提供了大量实际项目中遇到的常见问题和解决方案,帮助读者理解和应对真实场景中的挑战。 这本书的特点是注重实践。每个章节都通过具体示例,从简单到复杂地演示了如何使用JMeter进行性能测试。读者可以通过跟随示例一步步搭建测试计划和脚本,掌握性能测试的流程和技巧。同时,书中还介绍了常见的性能测试技术和方法,如性能监测、负载测试、压力测试等,帮助读者全面提升性能测试能力。 该书还关注全栈性能测试的实现。作者介绍了如何结合其他工具和技术,如利用云平台进行分布式测试、使用性能监测工具进行系统性能分析等。通过多个示例,读者可以学习如何将JMeter与其他工具和技术协同使用,实现全栈性能测试和监测。 对于有一定软件开发和测试基础的读者,这本《全栈性能测试修炼宝典JMeter实战》是一个很好的学习资源。通过阅读该书,读者可以系统地学习和掌握使用JMeter进行性能测试的方法和技巧,提高自己在全栈性能测试领域的能力。这本书对于想要了解和从事性能测试的软件开发人员和测试工程师来说,是一本难得的实用指南。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值