一文了解 | 性能测试有哪些阶段?每阶段的任务是什么?

图片

性能测试流程图

01 测试阶段

1、性能测试需求分析阶段

根据用户使用习惯和实际业务的性能需求,生成性能测试需求调查表

根据性能测试需求及系统重要业务调研,选取典型业务

了解业务模型及业务架构

2、性能测试设计阶段

编写性能测试用例

结合性能测试用例录制/修改/完善测试执行脚本

结合用户应用场景设计性能测试执行场景

3、性能测试执行阶段

利用LoadRunner性能测试工具中的Controller应用,按照并发用户数执行场景,并保存测试结果(Jmeter同理)

利用LoadRunner性能测试工具监控被测试环境下的服务器CPU,内存,磁盘等系统资源的使用情况

在需要的情况下利用第三方监控工具监控被测试系统的资源使用情况

在对于可靠性测试,长时间执行测试,查看系统是否会出现内存泄漏,宕机等情况

4、性能测试分析阶段

利用LoadRunner性能测试工具中的Analysis应用,分析场景执行后的结果

在需要的情况下借助其他辅助工具对系统进行监控,如Linux系统top等命令或其他辅助工具,进一步分析系统资源使用情况

5、性能测试调优阶段

通过与以前的测试结果进行对比分析,从而确定经过调整以后系统的性能是否有提升。

在进行性能调整的时候,最好一次只调整一项内容或者一类内容,避免一次调整多项而引起性能提高,却不知道是由于调整哪项关键指标而改善性能的。通常,我们是按照由易到难的顺序对系统性能进行调优。系统调优有易到难的先后顺序如下:
硬件问题

网络问题

应用服务器,数据库等配置信息

源代码,数据库脚本问题

系统架构问题根据性能测试执行结果,分析结果是否满足用户需求并生成性能测试报告

02 测试启动标准

1、系统待测版本定版

2、测试环境部署完毕

包括:

系统安装并调试成功,并经过相应优化,初始数据量满足测试要求

应用软件安装成功,待测试版本已正确部署

测试客户端机器到位,系统软件安装完毕

网络配置正确,连接通畅,可以满足压力测试需求

3、测试方案审核

批准完毕,项目组签字确认。

03 测试暂停/再启动标准

1、暂停准则

测试中发现问题,需求对系统进行代码修改,调优或需要更换,调整硬件资源(CPU、内存等)

测试环境受到干扰,比如服务器被临时征用,或服务器的其他使用会对测试结果造成干扰

2、再启动准则

测试中发现的软、硬件问题得以解决

测试环境恢复正常

04 测试完成标准

完成测试计划中规定的测试内容和轮次。

已达到性能测试计划完成时间,但因非测试方原因未完成测试场景的执行,客户方决定不再顺延该阶段的测试。

05 性能测试的测试目的、准备和方法

1、测试目的

主要目的是检查系统处于压力情况下时应用系统的表现,重点在于系统有无出错信息产生,考察系统应用的响应时间、TPS、资源状况等。

针对系统可靠性进行测试,主要检查系统在高负荷压力的情况下是否会出现如宕机、应用异常终止、资源竞争异常、资源死锁等问题。

通过压力测试,获得系统可能存在的性能瓶颈、发现、定位系统中可能存在的性能缺陷。

2、测试准备

功能测试已经结束

性能测试环境已经准备完毕

已将模拟数据提前准备完毕(被测试系统需要的测试数据)

相关技术支持人员的支持

3、测试方法

利用LoadRunner性能测试工具中的Virtual User Generator应用,录制性能测试执行脚本。

对性能测试脚本进行修改、调试、完善并保存测试脚本。利用LoadRunner性能测试工具中的Controller应用,按性能测试用例执行设计的场景并保存场景。

利用被测服务器自带监控工具和LoadRunner监控被测环境下服务器的CPU、网络流量等系统资源的使用情况。利用LoadRunner性能测试工具中的Analysis应用,分析场景执行后的结果。

4、测试分析范围

针对“测试业务及性能需求”的内容,对系统响应时间、系统业务处理容量(TPS)、被测试环境下服务器资源使用情况(如CPU、内存、磁盘等)进行监控。

06 文末福利

20道性能测试高频面试题分享:

1.性能测试关注的指标是什么?

2.性能测试怎么做的?/ 如果你要进行性能测试,你是如何展开操作的?

3.怎样分析性能测试结果?

4.如何判断网络是否存在瓶颈?

5.如何判断响应时间不达标?

6.如何判断CPU使用率不达标?

7.app的性能测试怎么做的?

8.用monkey做app测试,怎么做的?如果有问题的话怎么定位?

9.app出现ANR的原因?

10.app出现CRASH的原因?

11.APP常见崩溃原因?

12.说几个常用的adb指令?

13.软件覆盖安装的adb命令?

14.性能测试的adb命令?

15.说几个monkey指令?

16.弱网情况下你是如何测试的?

17.接口测试流程?

18.进行接口测试,你是如何进行去测试的?

19.举例说一下你的接口测试是怎么做的?

20.请描述下接口测试与UI测试是如何协同测试的?

在这里还是要推荐下我自己建的软件测试学习Q群: 746506216,群里都是学测试的,如果你想学或者正在学习测试,欢迎你加入,大家都是测试党,不定期分享干货(只有软件测试相关的),包括我自己整理的一份2022最新的Python自动化测试进阶资料和零基础教学,欢迎进阶中和对测试感兴趣的小伙伴加入!

猜你喜欢

转载自blog.csdn.net/m0_67695717/article/details/125005047