新手第一次做性能测试?性能测试流程详全,从需求到报告一篇打通

news2024/11/26 22:35:41

目录:导读

    • 前言
    • 一、Python编程入门到精通
    • 二、接口自动化项目实战
    • 三、Web自动化项目实战
    • 四、App自动化项目实战
    • 五、一线大厂简历
    • 六、测试开发DevOps体系
    • 七、常用自动化测试工具
    • 八、JMeter性能测试
    • 九、总结(尾部小惊喜)


前言

1、确认需求

确定性能需求和性能测试方案、需要确定性能测试范围(覆盖哪些场景)、性能测试策略、并发用户数和加压方式。

时间、人员、任务的分配安排,一般在总体测试计划中会预留性能测试的时间。性能测试方案是开展性能测试前的核心内容,决定着性能测试如何开展的指标标准。

其主要包括性能需求调研、性能测试范围、性能测试策略、并发用户数和加压方式、性能测试计划、用例等。其中性能测试方案中最重要的部分是计算并发用户数。

在性能测试有个核心内容也是在谈性能测试时绕不过去的问题,就是并发用户数的计算。目前做性能测试采用的比较多的并发用户数的评估策略是80-20法则。
通过与项目团队(含客户、产品)评估出系统高峰期和高峰时段,得到该高峰时段的用户数量。

假设本电商系统高峰时段为双十一上午10点为高峰期(做秒杀/团购活动)的用户数量是10W用户量,高峰时段为15分钟。

那么我们可以通过20-80法则来计算并发用户数,即80%的用户会在20%的时间内完成交易,计算结果为:(10W80%)/(15分钟60秒20%)=80000人/180秒=444.44人。

因为公司产品不只是为了满足当前的性能需求,还要能够满足未来3年的性能需求,而公司业务是增长的(不增长会被打死的),预计增长为20%(领导说了算,他开心就好),那么3年之后的并发用户数为:444.44人 * 1.2 * 1.2 * 1.2 = 768人 ,则得到每秒并发用户数768人。

由上可知,我们在线程组中设计的线程数为768,Ramp-up值为1,持续时间为10分钟(通用标准)。

2、脚本录制

录制性能测试脚本,增强脚本使性能测试脚本尽可能真实接近性能测试的实际情况(参数化、关联、定时器、集合点、断言)。

3、参数化

csv数据文件设置;
用户变量和用户参数;
函数助手;

4、关联

前面响应数据的提取:在JMeter通过在前面请求中添加后置处理器创建正则表达式提取器,正则表达式提取器中包含引用名称即参数的名称,可以任意填写。

正则表达式要根据响应来填写,响应在查看结果树中可以获取,在查看结果树中对响应使用RegExpTester模式查看,获取到要关联的数据及左右边界,将要关联的数据使用(.*?)来替代。模板一般为111,匹配数字一般为1后面。

请求数据的关联:把需要关联的请求数据使用${}正则表达式的引用名称即参数替代即可。

5、断言

响应断言的操作主要包括四种:
包含:预期结果应该包在实际结果当中
匹配:使用正则表达式进行匹配
Equals:完全相等(很少用)
Substring:与包含差不多,但不能使用正则表达式匹配

6、运行

运行性能场景,收集性能测试结果(聚合报告、每秒活跃线程数、每秒事务响应时间、每秒平均事务数、每秒点记录、吞吐率),分析性能瓶颈(通过图表分析)。

出具性能测试报告。
过程描述、图表加文字说明、缺陷分析。

下面是我整理的2023年最全的软件测试工程师学习知识架构体系图

一、Python编程入门到精通

请添加图片描述

二、接口自动化项目实战

请添加图片描述

三、Web自动化项目实战

请添加图片描述

四、App自动化项目实战

请添加图片描述

五、一线大厂简历

请添加图片描述

六、测试开发DevOps体系

请添加图片描述

七、常用自动化测试工具

请添加图片描述

八、JMeter性能测试

请添加图片描述

九、总结(尾部小惊喜)

只要你心怀梦想,勇往直前,就一定能够取得成功。即使前路坎坷,也不要轻易放弃,要坚定信念,迎难而上。记住,奋斗不只是一种状态,更是一种态度。让我们一起为了梦想而努力吧!

只有不停地努力,才能让梦想变为现实。每一步都要踏实前行,不断超越自己,勇往直前,拥抱挑战。坚持不懈的奋斗将创造属于你的辉煌人生。

只有你自己能够决定你的未来,所以用你的热情和毅力去追逐你想要实现的梦想吧!不要害怕失败,因为每一次失败都是成功的一个步骤。记住,只要你愿意努力,就没有什么是无法实现的!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/651195.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

3、互联网行业及产品经理分类

上一篇文章:2、产品经理的工作内容_阿杰学编程的博客-CSDN博客 1、产品经理分类 我们把产品经理划分成这样两个大的类型,一个是传统行业的,一个是互联网行业的。这个简单了解一下就行。 这个里面会发现绝大多数也是体育劳动,你比…

软件测试岗位都是女孩子在做吗?

听我一朋友说,测试岗位基本都是女孩子做。” 不知道是不是以前“软件测试岗”给人印象是“不需要太多技术含量”的错觉,从而大部分外行认为从业软件测试的人员中女生应占了大多数。比如有人就觉得:软件测试主要是细心活,所以女生…

2023 年各大互联网公司常见面试题(Java 岗)汇总

很多人都说今年对于 IT 行业根本没有所谓的“金三银四”“金九银十”。在各大招聘网站或者软件上不管是大厂还是中小公司大多都是挂个招聘需求,实际并不招人;在行业内的程序员基本都已经感受到了任老前段时间口中所谓的“寒气”。 虽然事实确实是如此&a…

30个接口自动化测试面试题,赶紧收藏

1. 什么是接口自动化测试? 答:接口自动化测试是指使用自动化工具对接口进行测试,验证接口的正确性、稳定性和性能等方面的指标。2. 为什么要进行接口自动化测试? 答:接口自动化测试可以提高测试效率,减少人…

新能源行业如何进行数据防泄漏

客户情况 某新能源电池企业专业从事于新能源锂离子动力电池和储能电池的研发、生产和销售,具备电芯、模组、BMS及Pack的完整资源开发能力。公司致力于通过持续不断地改进电池技术,为全球锂离子动力和储能领域提供数字化精准高效的新能源解决方案。 该企…

Nautilus Chain 主网上线在即,一文盘点该生态即将上线的项目

Nautilus Chain 是行业内第一个并行化,且运行速度最快 EVM Rollup 的L3扩容方案,作为首个模块化链,存储、计算、共识等都在不同的模块中,意味着其能够获得更高的可拓展性与扩容能力,并在Layer2的基础上进一步提升了网络…

SpringCloud Alibaba-Sentinel

SpringCloud Alibaba-Sentinel 1. Sentinel核心库1.1 Sentinel介绍1.2 Sentinel核心功能1.2.1 流量控制1.2.2 熔断降级 2 Sentinel 限流熔断降级2.1 SentinelResource定义资源2.1.1 blockHandler/blockHandlerClass2.1.2 fallback/fallbackClass2.1.3 defaultFallback 2.2 Sent…

2、产品经理的工作内容

上一篇文章:1、产品经理的宏观定义_阿杰学编程的博客-CSDN博客 接下来这个章节里,我们有三个目标。 第一个通过案例,大家要了解一下产品经理的一个主要的工作内容。 第二个理解产品经理的一个重要性。 第三个我们要熟悉一下MVP的概念&…

Vue实战笔记(四) 引入Mavon Editor

大家好,我是半虹,这篇文章来讲如何在 Vue 中引入 Mavon Editor \text{Mavon Editor} Mavon Editor 1、背景介绍 在上篇文章中,我们介绍过如何在 Vue 中引入富文本编辑器 Quill Editor \text{Quill Editor} Quill Editor 在这篇文章中&…

433/315接收芯片 XL520,SOP8封装,适用于低功耗要求产品

XL520是一款高集成度、 低功耗的单片ASK/0OK射频接收芯片。高频信号接收功能全部集成于片内以达到用最少的外围器件和最低的成本获得最可靠的接收效果。 XL520接收芯片为SOP8封装,正常工作电压范围2.0~5.5V,正常工作电流3.0~3.2mA,启动时间2…

pdf可以转换为word文档吗?分享这两个方法给大家!

PDF 是一种常见的文件格式,用于可靠地显示和共享文档。然而,当需要编辑或重用 PDF 内容时,将其转换为可编辑的 Word 文档是一个常见的需求。在本文中,我们将介绍两种方法,以帮助您将 PDF 转换为 Word 文档,…

SpringBoot+Bootstrap图书馆管理系统

主要功能 管理员权限登录: ①管理员拥有最高权限,可以分配角色,使不同角色(教师、学生等)登录显示不同界面的效果 ②首页、系统设置:菜单管理、角色管理、用户管理、日志管理、数据备份、违规统计、占座统…

Unity基础5——物理检测

一、层级 Layer ​ Unity 中设置了共 32 层 Layer,如图,可以点击 Add Layer 添加自定义的 Layer ​ 通过名字得到层级编号 LayerMask.NameToLayer(string layer) ​ 我们需要通过编号左移构建二进制数,这样每一个编号的层级都是对应位为 1 的…

如何使用Jmeter进行http接口测试?

目录 前言: 一、开发接口测试案例的整体方案: 二、接口自动化适用场景: 三、接口测试环境准备 四、创建工程: 总结: 前言: 本文主要针对http接口进行测试,使用Jmeter工具实现。 Jmter工具设…

HTMLCSS Day08 CSS transition过渡

文章目录 CSS过渡-Transitions-过渡三要素-过渡触发-transition-property 规定应用过渡的 CSS 属性的名称。-transition-duration 定义过渡效果花费的时间。默认是 0。-transition-timing-function 规定过渡效果的时间曲线。默认是 "ease"。-transition-delay 规定过…

史上最全文件类型读写库大盘点!什么?还包括音频、视频?

介绍史上最全PYTHON文件类型读写库大盘点!包含常用和不常用的大量文件格式!文本、音频、视频应有尽有!废话不多说!走起来! 先给大家快捷总结: 文件格式Python库文本文件内置open函数CSV文件csvJSON文件jso…

信号量实现线程同步代码

信号量&实现线程同步代码 信号量线程同步示例代码 信号量 信号量(Semaphore)是一种用于多线程编程中的同步工具,用于管理对共享资源的访问。它可以控制同时访问某个资源的线程数量,并提供了对共享资源的互斥访问。 信号量通…

一个支持WinForms换肤的开源组件

博主介绍: 🌈一个10年开发经验.Net老程序员,微软MVP、博客专家、CSDN/阿里云 .Net领域优质创作者,专注于.Net领域知识、开源项目分享!🌈 🛕文末获取,加入交流群🛕 &#…

java数组(Array)

文章目录 一维数组的使用数组的长度数组元素的引用一维数组的遍历一维数组内存分析 数组元素的默认值多维数组的使用静态初始化动态初始化数组的长度和角标二维数组的遍历内存解析 Arrays工具类的使用 一维数组的使用 int[] arr; int arr1[]; double[] arr2; String[] arr3; …

网工内推 | 1-3年经验,思科、华为、华三厂商认证均可

01 地球村股份有限公司 招聘岗位:网络工程师 职责描述: 1、提供技术支持服务,提供设备的告警信息的分析处理及与故障问题定位服务; 2、及时响应在服务时限内完成处理设备故障,包括用户有线无线接入故障、系统故障处理…