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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

一、什么是性能测试?

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

二、为什么做性能测试?

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

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

性能挑战:

业务复杂度提升

数据级日渐庞大

实时性要求提高

并发压力越来越高

应用面越来越广

三、功能测试与性能测试

四、怎么做性能测试?

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

性能测试工具≠性能测试

性能测试≠用户并发测试

提高硬件配置≠提高性能

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

五、岗位定级

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

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

六、性能测试流程

七、对测试工程师的要求

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

最后基础知识、Linux必备、Shell、互联网程序原理、Mysql数据库、抓包工具专题、接口测试工具、测试进阶-Python编程、Web自动化测试、APP自动化测试、接口自动化测试、测试高级持续集成、测试架构开发测试框架、性能测试、安全测试等配套学习资源【免费】。

性能测试入门,其实很简单,看看这篇,好好学习相关推荐

  1. Unity3D入门其实很简单

    在上次发布拙作后,有不少童鞋询问本人如何学习Unity3D.本人自知作为一名刚入门的菜鸟,实在没有资格谈论这么高大上的话题,生怕误导了各位.不过思来想去,决定还是写一些自己的经验,如果能给想要入门U3 ...

  2. python scratch unity_Unity3D入门其实很简单

    在上次发布拙作后,有不少童鞋询问本人如何学习Unity3D.本人自知作为一名刚入门的菜鸟,实在没有资格谈论这么高大上的话题,生怕误导了各位.不过思来想去,决定还是写一些自己的经验,如果能给想要入门U3 ...

  3. Redux其实很简单(原理篇)

    在上一篇文章中,我们通过一个示例页面,了解到Redux的使用方法以及各个功能模块的作用.如果还不清楚Redux如何使用,可以先看看Redux其实很简单(示例篇),然后再来看本文,理解起来会更加轻松. ...

  4. Oracle数据库基础教程:入门其实很简单

    为什么80%的码农都做不了架构师?>>>    Oracle数据库基础教程:入门其实很简单 Oracle数据库系统是目前最流行的客户/服务器数据库之一.本文集从初学者的角度出发,由浅 ...

  5. 新手怎么加入自媒体?新手入门其实很简单

    新手怎么加入自媒体?新手入门其实很简单,很多新手问我自媒体是什么,新手怎么加入自媒体,其实自媒体就是个人自媒体,新手怎么加入自媒体,它和传统媒体是有区别的,自媒体只要你想做都可以成为自媒体人,现在的自 ...

  6. Python爬虫入门并不难,甚至入门也很简单

    爬虫现在的火热程度我就不说了,先说一下这门技术能干什么事儿,主要为以下三方面: 1.爬取数据,进行市场调研和商业分析 爬取知乎.豆瓣等网站的优质话题内容:抓取房产网站买卖信息,分析房价变化趋势.做不同 ...

  7. 皇御贵金属:现货黄金投资入门其实很简单只需要做好这几点

    现货黄金投资入门对于投资者而言,其实并不难,只要投资者掌握下面几点内容,就能让投资变得更加简单.投资者进行现货黄金交易时,要从现货黄金投资的交易模式入手,在不同模式下进行投资选择,才能针对不同投资类型 ...

  8. ECharts 入门真的很简单

    一.ECharts 概述 ECharts 是一个使用 JavaScript 实现的开源可视化库,兼容性强,底层依赖矢量图形库 ZRender,提供直观.交互丰富.可高度个性化定制的数据可视化图表. 官 ...

  9. 表格合并行_Word制作验收单表格,很简单,快来学习吧

    作者:图文设计师东东 办公软件Word制作一款简单的验收单表格,方法很简单,大家一起来学习吧! 第一步.新建.插入表格 打开Word新建--空白文档,输入标题"验收单".如下图. ...

  10. 经过半年的摸爬滚打,入门机器学习如此简单

    经过半年的摸爬滚打,入门机器学习如此简单? 知道自己为什么学习机器学习 1.可能通过机器学习更好的深入深度学习.那么机器学习就点到为止.两周时间了解机器学习的理论与代码的实现.一周的时间去做机器学习的 ...

最新文章

  1. ROS、realsense开发常用命令汇总
  2. 阿里亲制明信片,字节、百度直接发锅……这些公司的新年礼盒越来越会玩~
  3. 计算机动画制作 实验要求,A074计算机动画制作实验——动画制作初步
  4. php猜数游戏63,PHP实现猜数游戏的代码实例分享
  5. 在SpringMVC中使用Jackson并格式化时间
  6. css 控制li点与文字的距离
  7. 面向对象三大特性之一:多态(C++)
  8. 从汇编去分析线程安全
  9. SpringBoot集成Flowable_Jsite待办任务菜单报500
  10. 04简单线性回归实战
  11. MicrosoftFixit50688 [Windows7事件ID10,WMI错误的解决方法
  12. BSD Socket~TCP~Example Code
  13. 信息论与编码2 期末复习-BCH码
  14. 【Python秒杀脚本】淘宝或京东等秒杀抢购
  15. 双系统如何干净删除Ubuntu
  16. 今天小暑是什么时间_2020年小暑具体时间是几点几分?小暑是什么意思?
  17. C++基础知识(常函数和常对象)
  18. 一. Mybits简单使用
  19. 支持向量机识别数字集(数据采集+模型训练+预测输出)
  20. 常见的关系型数据库和非关系型数据及其区别

热门文章

  1. java中使用 Date 和 SimpleDateFormat 类表示时间
  2. 浅议初中语文微写作(语文教师论文)
  3. 8种隔夜食物千万不要吃
  4. k8s 存活检查与就绪检查
  5. Android 拍摄(横\竖屏)视频的懒人之路
  6. 百度地图中心点偏移-Javascript
  7. python3代码换行与不换行问题
  8. 开源spider一览(zz)
  9. 多测师肖sir_高级讲师_第2个月第17讲讲解接口面试题
  10. vue element ui合并表格(合并某列的行数据)