2023性能测试入门,其实很简单,看看这篇,好好学习

news2024/11/16 12:24:01

注:性能测试,入门简单,深入难。经常有同学问,建议看看这篇 。

为了帮助大家快速的入门性能测试,接下来文章将从以下几个方面进行展开:

一、赶鸭子上架要我搞性能测试,怎么办?
二、想搞性能测试,要学什么东西?
三、搞性能测试,并不只是搞搞工具
四、搞性能测试,如何入门

一、赶鸭子上架要我搞性能测试,怎么办?

我第一次真正意义上搞性能测试是在2014年。项目组要求搞性能测试,我之前也没搞过,对服务端也不熟悉。就那么一脸懵逼地开始搞性能。当时我连linux上有哪些能看系统资源的命令都不知道。稀里糊涂地进行了好几轮地性能测试之后,我最大的感受是:对于非专家的测试人员来说,搞性能测试是一个团队活动,而非个人活动。

整个过程中,我更多地是借助团队地力量来搞。系统监控不会,找运维帮忙,软件架构不懂,找架构师帮忙,服务器参数不会调,开发替我调。而在这次做完这一波性能测试之后,我下决心要搞懂性能测试到底是怎么搞的。毕竟,刚毕业的时候就听说了,自动化测试和性能测试这俩方向好,但我从来没听谁把“性能测试到底是怎么回事”讲清楚过。我自己在后面的工作中琢磨了很多年,直到最近这两年才琢磨得差不多了,很想跟大家分享一下。

二、想搞性能测试,要学什么东西?

2006年我还在读书的时候,学校里的软件质量课程里,老师跟我们讲“用win runner做性能测试”。2008年我毕业进第一家公司的时候,公司里的培训老师跟我讲,“用load runner做性能测试“。2011年,我在另一家公司做接口测试的时候,我们用soapUI做功能测试,soapUI的公司的网站上跟我讲,“用loadUI做性能测试”。2012年,我在自学的时候又网上看到了“用jmeter做性能测试”。而后来,gatling,grinder,locust,tsung,工具多得数不胜数。那么,我早就想问了,性能测试就是使用这些测试工具吗

现在我也找了很多测试的朋友,做了一个分享技术的交流群,共享了很多我们收集的技术文档和视频教程。
如果你不想再体验自学时找不到资源,没人解答问题,坚持几天便放弃的感受
可以加入我们一起交流。而且还有很多在自动化,性能,安全,测试开发等等方面有一定建树的技术大牛
分享他们的经验,还会分享很多直播讲座和技术沙龙
可以免费学习!划重点!开源的!!!
qq群号:110685036

 

三、搞性能测试,并不只是搞搞工具

性能测试最需要的东西,不在于工具,而在于对整个待测系统的理解。首先要理解整个待测系统它的软件架构,硬件架构,网络架构,理解它是如何运行的。它由哪些部分组成,各个部分之间是怎样交互的。用户怎样使用这个系统。在理解系统的基础上,我们可以得出系统的各个部分的性能要求是怎样。也就是性能需求

而测试的过程也就是验证和探索这些性能需求。

为各种性能需求设计测试场景,再编写测试脚本,执行测试脚本,汇总测试结果,再分析测试结果,进行调优,再重复测试与调优,最后产出测试报告。指明系统是否符合性能需求,哪里还达不到要求。

这其中,跟性能测试工具有关的,只有“编写测试脚本,执行测试脚本”。其他的所有步骤需要的是:计算机科学与技术的各方面综合知识、对业务的理解、对待测系统技术实现的理解。至于性能测试的工具,我们可以选用开源工具,也可以选择自己开发工具。当我们全盘理解性能测试之后,就可以针对具体的需求开发性能测试工具来解决各种实际问题。注意自己开发的性能测试工具与开源工具的区别:自己开发的工具可以很有针对性,而开源工具需要考虑兼容性与普适性。两者的开发重点完全不同。开源工具以推广这个工具为目标,而自己写的工具以最快/最经济解决实际问题为目标。

四、搞性能测试,如何入门

说了这么多,性能测试到底要如何入门呢。

一方面,工具仍旧是要的,建议使用jmeter等开源工具作为入门学习的工具。照着用户手册操作一遍,花个几天时间就能上手。

更重要的另一方面,我们需要理解性能测试的原理,做性能测试的基本步骤,场景设计的基本策略。不知道这些,光拿个工具,有什么用呢。现实业务千变万化,往往需要测的东西,并不是那么简单拿个工具随便搞搞就能搞好的东西。

一、什么是性能测试?

通俗来说:利用性能测试工具或者代码对系统的相关性能指标进行的测试,用来评估系统的性能

二、为什么做性能测试?

性能测试是互联网+企业的“刚需”

企业规模越大,性能瓶颈越明显,性能测试至关重要!

性能挑战:

业务复杂度提升

数据级日渐庞大

实时性要求提高

并发压力越来越高

应用面越来越广

三、功能测试与性能测试

四、怎么做性能测试?

只测试不调优=“只查病不治病”

性能测试工具≠性能测试

性能测试≠用户并发测试

提高硬件配置≠提高性能

性能测试≠只录制脚本,不编写脚本

五、岗位定级

以我之前性能团队Leada时候的经历来说,对性能岗位的定级,大概是按照如下内容划分:

如上定级和岗位职责描述,稍显粗略,每一级都默认具有上一级的职责和能力。

六、性能测试流程

七、对测试工程师的要求

 如果我的博客对你有帮助、如果你喜欢我的博客内容,请 “点赞” “评论” “收藏” 一键三连哦!

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

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

相关文章

最新外卖点餐小程序开源源码 支持单店+多店双模式 含完整前后端代码包和搭建教程

随着移动互联网的普及,外卖点餐已成为人们日常生活中不可或缺的一部分。给大家分享一个全新的外卖点餐小程序开源源码!该程序支持单店及多店模式,含完整的前后端代码和详细的搭建教程,让您轻松开启外卖点餐业务! 一、…

企业数字化之库存管理篇

一、前言 接上一篇 《企业数字化之采购篇》,这一篇我们来了解一下如何做好库存管理,主要还是讲销售型企业成品库存的管理,对于生产制造型企业库存因涉及到物料、半成品、各种消耗品、成品,其存在一定依赖的相关性,会复…

简单强大的时序图绘制工具

今天分享一个简单强大的时序图绘制工具——WaveDrom。 WaveDrom Digital Timing Diagram everywhere WaveDrom draws your Timing Diagram or Waveform from simple textual description. It comes with description language, rendering engine and the editor. WaveDrom edi…

vue-7-vuex

一、Vuex 概述 目标:明确Vuex是什么,应用场景以及优势 1.是什么 Vuex 是一个 Vue 的 状态管理工具,状态就是数据。 大白话:Vuex 是一个插件,可以帮我们管理 Vue 通用的数据 (多组件共享的数据)。例如:购…

浅谈内存函数以及模拟实现

1.memcpy void * memcpy ( void * destination, const void * source, size_t num ); 函数memcpy从source的位置开始向后复制num个字节的数据到destination的内存位置。 这个函数在遇到 \0 的时候并不会停下来。 如果source和destination有任何的重叠,复制的结果都…

小白学习笔记—网络安全/黑客技术

作为一个合格的网络安全工程师,应该做到攻守兼备,毕竟知己知彼,才能百战百胜。 谈起黑客,可能各位都会想到:盗号,其实不尽然;黑客是一群喜爱研究技术的群体,在黑客圈中,一…

【HomeKit】HAT User Manual教程

前言:这篇文章是对于苹果协议文件《HomeKit Accessory Tester (HAT) User Manual》的学习,即 HomeKit配件测试仪(HAT) 用户手册,该版本是第11次修订 第一章 概述 本文档介绍了Apple HomeKit配件测试仪(HAT)的配置和使用方法。HAT是一个Mac应…

家政系统开发,家政保洁维修预约小程序开发;

家政系统是家政行业的专业管理系统软件,功能涉及到家政公司运营的方方面面,包括:推广、营销、管理、培训、周边服务等等; 家政系统功能介绍: 系统集成分销客户裂变、微信推广、团购引流、热文海报推广、短视频引流、搜…

Camera metadata

目录 背景 CameraMetadata基本概念 Google Metadata Google—Metadata结构 官方注释 Aandroid API cameraMetadata头部 : struct camera_metadata camera_metadata_buffer_entry struct camera_metadata_entry data区为什么是一个联合体? camera metadat…

什么是Fetch API?与传统的AJAX相比,有什么优势?

聚沙成塔每天进步一点点 ⭐ 专栏简介 前端入门之旅:探索Web开发的奇妙世界 欢迎来到前端入门之旅!感兴趣的可以订阅本专栏哦!这个专栏是为那些对Web开发感兴趣、刚刚踏入前端领域的朋友们量身打造的。无论你是完全的新手还是有一些基础的开发…

3分钟学会批量查询快递秘籍

随着网购的普及,我们经常需要查询快递来了解自己的包裹状态。然而,如果一个个手动查询,不仅费时而且麻烦。这时候,一款能够批量查询快递的软件就变得尤为重要。今天,我将向大家介绍一款名为“固乔快递查询助手”的软件…

Linux知识点 -- 网络基础 -- 数据链路层

Linux知识点 – 网络基础 – 数据链路层 文章目录 Linux知识点 -- 网络基础 -- 数据链路层一、数据链路层1.以太网2.以太网帧格式3.重谈局域网原理4.MAC地址5.MTU6.查看硬件地址和MTU的命令7.ARP协议 二、其他重要协议或技术1.DNS(Domain Name System)2.…

2008-2020年中国区域二氧化氮产品

简介: 针对OMI 2008-2020年数据中因行异常或者云造成缺失的对流程NO2数据进行填补,利用面积权重法将OMI和GOME数据统一重采样至0.25度的空间分辨率。前言 – 人工智能教程 二氧化氮(Nitrogen Dioxide,简称NO2)是一种…

Java每日笔试题错题分析(1)

Java每日笔试题错题分析(1) 一、错题知识点前瞻第26题第29题第34题第41题第50题 二、错题展示及其解析第26题第29题第34题第41题第50题 一、错题知识点前瞻 第26题 多个catch块中子类异常放在前面,父类异常放在后面,否则会产生编…

ssm173基于SSM的养老院老人健康监护平台设计与实现

末尾获取源码 开发语言:Java Java开发工具:JDK1.8 后端框架:SSM 前端:采用Vue技术开发 数据库:MySQL5.7和Navicat管理工具结合 服务器:Tomcat8.5 开发软件:IDEA / Eclipse 是否Maven项目&#x…

保姆级微服务部署教程

大家好,我是鱼皮。 项目上线是每位学编程同学必须掌握的基本技能。之前我已经给大家分享过很多种上线单体项目的方法了,今天再出一期微服务项目的部署教程,用一种最简单的方法,带大家轻松部署微服务项目。 开始之前,…

《安富莱嵌入式周报》第324期:单对以太网技术实战,IROS2023迪士尼逼真机器人展示,数百万模具CAD文件下载,闭环步进电机驱动器,CANopen全解析

周报汇总地址:嵌入式周报 - uCOS & uCGUI & emWin & embOS & TouchGFX & ThreadX - 硬汉嵌入式论坛 - Powered by Discuz! 更新一期视频教程: 第8期ThreadX视频教程:应用实战,将裸机工程移植到RTOS的任务划分…

自助建站系统,一建建站系统api版,自动建站

安装推荐php7.2或7.2以下都行 可使用虚拟主机或者服务器进行搭建。 分站进入网站后台 域名/admin 初始账号123456qq.com密码123456 找到后台的网站设置 将主站域名及你在主站的通信secretId和通信secretKey填进去。 即可正常使用 通信secretId和通信secretKey在主站的【账号…

【Proteus仿真】【STM32单片机】病床呼叫系统设计

文章目录 一、功能简介二、软件设计三、实验现象联系作者 一、功能简介 本项目使用Proteus8仿真STM32单片机控制器,使用LCD1602液晶、按键、蜂鸣器LED、双机通信等。 主要功能: 系统运行后,LCD1602显示开机界面,当从机病床按键按…

ExoPlayer架构详解与源码分析(4)——整体架构

系列文章目录 ExoPlayer架构详解与源码分析(1)——前言 ExoPlayer架构详解与源码分析(2)——Player ExoPlayer架构详解与源码分析(3)——Timeline ExoPlayer架构详解与源码分析(4)—…