更多课程 选择中心

软件测试培训
达内IT学院

400-996-5531

软件测试工程师:性能测试分为哪些阶段?每一阶段具体的内容是什么?

  • 发布:木子小白
  • 来源:博客园
  • 时间:2018-10-18 17:31

今天达内软件测试培训带大家了解的是性能测试分为哪些阶段,每一阶段具体的内容是什么,小编认为我们需要严格根据测试阶段进行测试推进,这是测试标准化建立的一个环节、一个过程,是你我应该共同努力推进的一个任务。

性能测试分为哪几个阶段?

性能测试的目的,简单说其实就是为了获取待测系统的响应时间、吞吐量、稳定性、容量等信息。而发现一些具体的性能相关的缺陷(如内存溢出、并发处理等问题),我认为只是一种附加结果。从更高的层次来说,性能测试最想发现的,是瓶颈。如何能得到所需要的信息,就需要从多方面进行测试。也要在测试的各个阶段严格把控,形成测试标准。

性能测试分为哪几个阶段?

上面主要说的是测试内容的划分,也就是说做性能测试时要考虑到的几个方面。从实际执行层面来看,测试的过程一般分为这么几个阶段:

1.测试确认

理解被测系统、寻找测试点、确认测试范围、测试环境等。一些重要信息需要同PM、需求人员、设计人员讨论确认,如用户最常用哪些功能、最关注哪的性能,程序上哪可能是压力点,哪些数据需要模拟到真实的量级,大体上需要使用哪种测试方法。

2.确定通过标准

性能是好是坏、测试是否通过,必须有明确的标准。这个标准,主要从客户的期望和业务上的需求两方面来考虑,客户的期望一般指页面上的响应时间,业务需求则是系统的处理能力,一般为吞吐量或TPS(每秒完成事务数)。标准制定的不合理,测试结果可能无法反映系统真实的性能表现,或者会让客户无法接受我们认为通过的软件。

至于具体如何去设定,是需要同业务负责人(一般为PM)和技术负责人(一般为设计人员)共同确认的,业务负责人了解用户的实际需求和期望,技术负责人了解具体的实现,可以判断哪些是不可达到的要求。

一旦达成了共识,那么测试就要严格的按照标准去执行。

3.测试设计

主要从上面提到的几个方面进行分析,针对系统的特点设计出合理的测试场景。为了让测试结果更加准确,这里需要很细致的工作。如建立用户模型,只有知道真实的用户是如何对系统产生压力,才可以设计出有代表性的压力测试场景。这就涉及到很多信息,如用户群的分布、各类型用户用到的功能、用户的使用习惯、工作时间段、系统各模块压力分布等等。只有从多方面不断的积累这种数据,才会让压力场景更有意义。最后将设计场景转换成具体的用例。

测试数据的设计也是一个重点且容易出问题的地方。生成测试数据量达到未来预期数量只是最基础的一步,更需要考虑的是数据的分布是否合理,需要仔细的确认程序中使用到的各种查询条件,这些重点列的数值要尽可能的模拟真实的数据分布(数据统计信息、执行计划相关的内容,此处就不细说了),否则测试的结果可能是无效的。

此外,性能测试执行过程中,需要监控收集的各种指标数据,也需要明确下来。

4.测试环境准备

部署测试环境,生成测试数据,环境预调优等等。预调优指根据系统的特点和自己的经验,提前对系统的各个方面做一些优化调整,避免测试执行过程中的无谓返工。比如一个高并发的系统,10000人在线,连接池和线程池的配置还用默认的,显然是会测出问题的。

5.测试执行、监控

准备测试脚本,执行之前设计好的各个用例,监控并收集需要的数据。出现问题时,切记要全面的保留事故现场、或者是能进行分析的数据。比如TOMCAT不再响应,不能只把这个现象记录下来,这对问题的排查定位是没有意义的,要保留所有相关的日志,导出线程转储和堆转储。

6.问题分析定位、调优

发现问题或者性能指标达不到预期,及时的分析定位,处理后重复测试过程。

性能问题通常是相互关联相互影响的,表面上看到的现象很可能不是根本问题,而是另一处出现问题后引起的反应。这就要求监控收集数据时要全面,从多方面多个角度去判断定位。

调优的过程其实也是一种平衡的过程,在系统的多个方面达到一个平衡即可。

7.性能报告

将测试过程中记录的各种数据汇总成报告,将各方面需要的结果清楚的展现出来。

上面所有内容中,如果排除技术上的问题,性能测试中最难做好的,就是用户模型(或者叫系统使用模型)的分析。它直接决定了压力测试场景是否能够有效的模拟真实世界压力,而正是这种对真实压力的模拟,才使性能测试有了更大的意义。可以说,性能测试做到一定程度,差距就体现在了模型建立上。

至于性能问题的分析、定位或者调优,很大程度是一种技术问题,需要多方面的专业知识。数据库、操作系统、网络、开发都是一个合格的性能测试人员需要拥有的技能,只有这样,才能从多角度全方位的去考虑分析问题。

当然,对于测试人员来说,技术能力只能排在第二号,测试思想才是最根本的。敏锐的嗅觉、严谨的逻辑、合理的推测、大胆的实践是一个合格测试工程师的必备要素。真正的难点在于,你要想出来如何去测是有效的、有保障的,这才是测试工程师最重要的能力。

还是那个观点,思想才是根本。

感谢您的阅读,以上就是性能测试分为哪些阶段,每一阶段具体的内容是什么的一些简单介绍,你还有更好的见解吗?更多软件测试相关的内容尽在达内软件测试培训,敬请关注。

免费学习测试入门技术的机会来喽!本月免费软件测试培训课程火热开启倒计时7天,抢先抓住,全程大咖级讲师亲授,帮你了解技术,轻松入门,帮你寻找自己感兴趣的方向。

免责声明:内容和图片源自网络,版权归原作者所有,如有侵犯您的原创版权请告知,我们将尽快删除相关内容。

预约申请免费试听课

填写下面表单即可预约申请免费试听! 怕学不会?助教全程陪读,随时解惑!担心就业?一地学习,可全国推荐就业!

上一篇:软件测试工程师,性能测试分为哪几个方面?每一方面都测试什么?
下一篇:http接口性能测试用什么工具?怎么操作?

你知道吗?做软件测试不一定需要精通代码!

软件测试人员不需要懂代码,这是一个伪命题!

如何设计登录测试的设计用例?

软件测试必备的数据库知识有哪些?(终)

Copyright © 2023 Tedu.cn All Rights Reserved 京ICP备08000853号-56 京公网安备 11010802029508号 达内时代科技集团有限公司 版权所有

选择城市和中心
黑龙江省

吉林省

河北省

陕西省

湖南省

贵州省

云南省

广西省

海南省