目录:导读
- 前言
- 一、Python编程入门到精通
- 二、接口自动化项目实战
- 三、Web自动化项目实战
- 四、App自动化项目实战
- 五、一线大厂简历
- 六、测试开发DevOps体系
- 七、常用自动化测试工具
- 八、JMeter性能测试
- 九、总结(尾部小惊喜)
前言
并发/负载/压力理解
负载测试:通过不断加压使系统达到瓶颈,为调优提供参考数据
压力测试:
稳定性压力测试:在不同的给定的条件下(比如内存的使用,一定时间段内有多少请求等),系统表现出来的处理,反应能力(这里会考虑系统的容错能力,恢复能力)
破坏性压力测试:不断加压,直至系统崩溃,挂掉,来得出系统的最大承受能力在哪儿
并发测试:简单理解就是业务场景短时间内有大量的请求需要处理,一般出现在登陆或者某些比较重要的模块,按钮。
压力测试
定义:系统在一定饱和状态下,例如CPU、内存等饱和情况下,系统能够处理的会话能力,以及系统是否会出现错误
特点:
该方法的主要目的是检查系统处于压力情况下是应用的性能表现;
该方法通过增加访问压力,是系统资源使用保持在一定水平,检验此时应用的表现,重点在于有误出错信息产生,系统对应用的响应时间等。
该方法一般通过模拟负载等方法,使得系统的资源使用达到较高的水平
负载测试
定义:在被测系统上不断增加压力,直到性能指标(如响应时间)超过预期指标或者某种资源使用已经达到饱和状态。可以找到系统的处理极限,为系统调优提供数据
特点:
该方法主要目的是找到系统处理能力的极限;
该方法在给定的测试环境下进行,通常需要考虑被测系统的业务压力量和典型场景;
该方法一般用来了解系统的性能容量,或者是配合性能调优来使用;
性能容量:系统在保证一定响应时间的情况下能够允许多少并发用户的访问
验收性能测试
定义:特定条件下验证系统的能力状况
特点:
该方法主要目的是验证系统是否具有系统宣称的能力;
方法包括:确定用户场景,给出需要关注的性能指标,测试执行,测试分析几个步骤。
该方法需要事先了解被测系统的典型场景,并具有确定的性能目标;
这种方法要求在已确定的环境下进行;
配置测试
定义:通过对被测系统软硬件环境的调整,了解各种不同环境对系统性能影响的程度,从而找到系统各项资源的最优分配原则
特点:
该方法主要目的是了解各种不同因素对系统系能影响的程度,从而判断出最值得进行的调优操作;
该方法一般在对系统性能状况有初步了解后进行,需要在确定的环境、操作步骤和压力条件下进行;
该方法一般用于性能调优和规划能力;
并发测试
定义:模拟多用户并发访问同一个应用、模块或者数据记录时是否存在死锁或者其他性能问题
特点:
该方法主要目的是发现系统中可能存在的并发访问时的问题;
该方法主要关注系统中可能存在的并发问题。
比如:内存泄漏、线程锁和资源争用等问题
该方法可以在开发的各个阶段使用,需要相关的测试工具的配合和支持
常用工具:
商业软件loadrunner:功能完整强大,内存占用大,需要收费
开源工具jmeter:开源免费,自由,操作较简单,能辅助完成日常的一些测试工作
可靠性测试
定义:给系统施加一定的业务压力,让其持续运行一段时间,测试在这种条件下能否稳定运行
特点:
该方法的主要目的是验证系统是否支持长期稳定的运行;
该方法需要在压力下持续一段时间的运行;
测试过程中需要关注系统的运行情况;
比如:内存使用或者其他资源的使用以及响应时间有无明显变化
失效恢复测试
针对有多余备份和负载均衡的系统设计
定义:检测如果系统局部发生故障,系统能否继续使用
特点:
该方法主要目的是验证局部故障下系统能否继续使用;
该方法需要指出:问题发生时“能支持多少用户访问”和“采取何种应急措施”;
一般只有对系统持续运行能力有明确指标的系统才需要该类型测试
下面是我整理的2023年最全的软件测试工程师学习知识架构体系图 |
一、Python编程入门到精通
二、接口自动化项目实战
三、Web自动化项目实战
四、App自动化项目实战
五、一线大厂简历
六、测试开发DevOps体系
七、常用自动化测试工具
八、JMeter性能测试
九、总结(尾部小惊喜)
成功不是偶然,而是坚持努力的结果。每一份付出都会有回报,每一次汗水都将绽放芬芳。不要畏惧困难,不要停下脚步,只要坚持不懈,你一定能够创造属于自己的辉煌!加油!
每一次努力都是一次积累,每一次奋斗都是一次成长。无论前路多么艰辛,只要心怀梦想,勇敢追求,你就能超越自己,创造属于自己的辉煌!相信自己,坚持不懈,成功必将属于你!加油!
只要坚持不懈,成功就在不远处;只要努力奋斗,辉煌就在眼前。不管遇到什么困难和挑战,都要勇往直前,相信自己,你一定能够取得非凡的成就!加油!