目录:导读
前言
性能测试实战–性能测试流程分析
要通过API接口对服务系统进行性能测试,必须要熟悉服务系统的接口
性能测试通常比较复杂,要真正的做好很不容易
性能测试工程师要具备哪些技能?
1.要有产品视野,需要明白真实场景下,用户是怎样使用产品的,才能知道哪些场景是用户大量使用的,容易有性能瓶颈的,继而有针对性的设计性能测试用例,开发性能测试代码。
2.要有开发视野,明白产品架构,甚至是一些实现细节,这样才能对哪些场景可能会引发性能问题了然于胸。
3.要有测试经验,结合前面的知识,写出良好的性能测试用例
4.要有开发技能,灵活的使用各种测试工具,有的工具还需要二次开发,甚至市场上没有现场的可以使用的测试工具,比如我们现在大部分服务系统是基于HTTP协议的API接口,测试工具大部分是针对HTTP协议的,如果有其他协议的API接口,必须得自己开发测试工具
性能测试和自动化测试是高级测试人员的必备技能
性能测试不止是测试工具的使用,而是要明白整个性能测试流程
性能测试流程:
1.分析需求(服务系统)、确定性能测试场景
2.编写测试计划,测试用例
3.执行测试
什么时候启动性能测试工作?
随着开发过程的进行,性能测试的指标非常容易发生波动。比如最开始的性能瓶颈,会随着开发过程发生改变,导致编写的测试计划、测试用例完全没用,再比如服务系统的运行环境也会随着开发过程改变,导致最开始准备好基于原来运行环境的测试没有意义。
一般建议是产品功能测试完成几轮后,产品功能相对稳定、运行环境不会发生大的更改后再启动性能测试。不过作为性能测试人员,可以预先做一些准备(熟悉测试工具,相关基础知识学习,熟悉系统等)。
性能测试实战流程–需求分析
确定性能测试的场景:
1.功能测试需要测试服务系统所有的功能点,而性能测试只需要关注系统功能中比较容易成为瓶颈的部分,针对瓶颈部分进行压力测试。
2.商城的瓶颈在于用户登录浏览商品、秒杀抢购某个商品、双11、12大量用户登陆等,而管理员的后台操作通常不会成为性能瓶颈,因为管理员就没几个人。
3.如何确定性能测试场景?测试人员了解产品所有功能,精准定位用户大量使用的场景,了解产品的实现细节。需要和产品、开发通力合作。测试仔细分析产品功能和系统设计者、产品或者有可能是用户深入交流,这样才能全面合理的确定性能测试的场景。
4.性能测试场景确定后,就应该和产品部门和开发部门一起确定系统运行的软件环境、硬件环境及系统要达到的性能指标
性能指标:
1.被测系统对外的性能指标:支持并发连接数量(使用业务的用户数量)、单位时间处理请求数量、响应正确的数量,百分比、响应错误的数量,百分比、响应超时的数量,百分比、平均响应时间。
2.被测系统在进行压力测试时,系统对硬件的资源占用情况:CPU占用率、内存使用量、磁盘访问量、网络吞吐量。
运行环境、数据配置:
1.不提运行环境、数据压力配置的给出测试性能指标是没有意义的。
2.运行环境指的是被测系统在服务客户时,所运行的硬件环境和软件环境。
3.进行测试时,要尽量使测试环境贴近实际的运行环境。
4.硬件环境: 服务器机型、CPU配置、内存配置、网卡配置、硬盘配置 等。有些被测系统 运行在集群系统,就需要指明集群的整体环境配置。有些被测系统 运行在云平台上,也需要指明相应的 环境配置。
5.软件环境:操作系统、数据库 和 被测系统运行时所依赖的其他第三方组件服务,比如:消息队列系统、缓存系统、异步任务系统、反向代理系统等。重要系统的设置项也应该 指明,比如 缓存的内存大小分配,数据库系统的参数设置等。
6.数据配置:是性能测试的业务数据设置,不同的系统有各自的业务数据。比如 白月CRM 系统 包括:多少条注册用户、多少药品数据、多少业务订单等。业务数据配置 对 测试结果 影响非常大。
【无删减版】Jmeter性能测试从零到精通实战教程,核心全套性能测试!
下面是我整理的2025年最全的软件测试工程师学习知识架构体系图 |
一、Python编程入门到精通
二、接口自动化项目实战
三、Web自动化项目实战
四、App自动化项目实战
五、一线大厂简历
六、测试开发DevOps体系
七、常用自动化测试工具
八、JMeter性能测试
九、总结(尾部小惊喜)
每一个伟大的成就都始于勇敢的开始。不要被眼前的困难吓倒,你的潜力远超想象。当别人停下时你继续前进,当别人放弃时你咬牙坚持,这就是成功者和普通人的区别。记住,今天的坚持是明天的骄傲!
生命最美的风景,往往在险峰之上。别让恐惧束缚你的脚步,别让怀疑动摇你的决心。每一次跌倒都是成长的契机,每一次挑战都是蜕变的开始。挺起胸膛向前走,属于你的辉煌正在路上!