性能测试(1)-开篇杂谈

?

自学性能测试很辛苦。所以想趁着我学习的时候,记录下我的一点一滴。等到将来拿出来看的时候,可以有东西来给我回味。

我呢,本来学校出来是做开发的,但是呢,工作难找,谁会要要一个专科而且没有经验大学生来写代码呢?找工作,很不容易,到处受挫折。为了得到那万恶的RMB来买自己心爱的显卡来打游戏,曾经一度去了工地,拿起了大锤。当起了圣骑士(其实就是小民工)。嘴里还高喊"大地母亲忽悠着你~",然后猛地一锤子落下,再费力的举起大锤,高喊"为了辛多雷的荣耀~",又是一锤子。我果然不甘心这种生活,所以决定"先就业,再择业"选择了低门槛的测试行业,信誓旦旦的想着,先做两年,等我有经验了再转开发。可是现实不容许我这样。这条错路想回头太艰难了。所以呢,既然走错了了路。就将错就错吧,所以我走在测试的路上发现了很多东西,发现测试不是人们看到的那么低门槛的职业。与我年幼时的梦想相近。"黑客"每一个搞计算机的人,谁没有梦想过黑客呢?而测试行业跟"黑客"真的隔得太近了。简直就像是在黑客破坏系统前,先把系统破坏掉。预估到这种风险的可能,然后修复。所以我开始正视测试行业了,真正快乐的人是那种在走弯路时也不忘享受风景的人。O(∩_∩)O~

?

理论上性能测试工程师需要达到的标准:

  1. 是否能够独立开发脚本
  2. 能否对需求进行性能分析并获得性能需求
  3. 能否开发脚本和场景完成对用户行为的模拟
  4. 能否通过性能测试发现比较具体的性能瓶颈
  5. 能否根据性能瓶颈提出有效的调优方案
  6. 文档编写环境搭建的能力
  7. 团队协作与沟通的能力

?

性能测试工程师需要掌握的技能:

  1. C/C++,因为C配上Loadrunner是很常见的性能测试员应该具备的实力
  2. Loadrunner,可以模拟大量的用户进行压力测试。工具有很多种,但是LR是典型。关键是知道运行原理,和自己想要的需求是什么。我之所以用LR是因为我在做游戏中的压力测试时,需要很有游戏玩家上线走动,而请这么多的玩家,公司消费很大,所以可以用LR模拟玩家的消息请求。来做很多个机器人在游戏里面走动。
  3. SQL,熟悉数据库可以用来造数据,你说,LR可以造数据啊,但是大量的数据怎么办呢?20W条玩家数据,你用LR刷一晚上,都未必能刷完。而用数据库,也许就几时分钟或者几小时的事情。而且据大神说,性能调优,有70%的问题是来自数据库。所以数据库学好,很有必要的。
  4. Linux/Windows,学好操作系统,能让你对系统更加了解自己所用的东西,哪里可能会出现缺陷。如果不了解操作系统原理,不了解操作系统的内部结构和其向用户提供的很多重要的库函数和系统调用,就不能有效的发现这些软件的缺陷。也不知道出了问题该怎么维护。
  5. TCP/IP协议,学好网络不会有错的。不管是用来攻击还是防御,都是一门很有意思的学问。我们测试,说白了就是"破坏"。像黑客一样,能比黑客先破坏掉系统的安全并且修复。可能系统上线的时候会少很多麻烦。
  6. 配电脑,会配电脑就会对一些CPU指标呀,内存指标特别敏感。什么样的电压会造成系统不稳定啊,什么样的内存会不兼容。所以会配电脑,也是可以提升性能测试的水平的。

    ?

    ?

性能测试的一些总结和归纳

从上图看性能测试基本占了整个软件测试50%的测试内容,如负载测试,压力测试,性能测试,大数据测试。等等。可想而知性能测试在测试中的重要性。

?

其实性能测试,就是洗白的了黑客。每个搞计算机的,谁没有想当黑客的梦想呢。下面是一些高手总结黑客的学习方向。希望能帮助到有兴趣的朋友。

?

?

性能测试的概念

性能测试(Performance Testing)

在一定的负载情况下,系统的响应时间等特性是否满足特定的性能需求,从某些角度来说,性能其实是功能的一种。

对于系统测试来说,作为一个优秀的系统测试工程师需要有"系统"的视角,来分析被测系统。

  1. 功能测试:某个功能点
  2. 性能测试:整个系统包括软件和硬件

?

软件测试是指:

在规定条件下,相对于所用资源的数量,软件产品可提供适当性能的能力。

资源可能包括其他软件产品、系统的软件和硬件配置。对于用户操作的系统,功能性、可靠性、易用性和效率的组合可以由使用质量从外部进行测量。

?

衡量一个软件的性能,需要从软件效率的一下3点考虑

  1. 时间特性

    ---在规定条件下,软件产品执行其功能时,提供适当的响应和处理时间以及吞吐率的能力

  2. 资源利用性

    ---在规定条件下,软件产品执行其功能时,使用合适数量和类别的资源的能力。

  3. 效率依从性

    ---软件产品遵循与效率相关的标准或约定的能力

    ?

也就是说,我们需要确保软件在一定的资源下达到一定的性能,并且遵守相关的标准或协议。例如我们从来不会奢望以太80386的电脑能够在1分钟内启动完成winodws系统,因为我们知道这样的硬件违反了产品的标准。但是如果一台高级的主流配置电脑在1分钟内无法启动Windows系统,你就会开始怀疑是不是自己的硬件存在某些问题,如果是硬件问题,那么你就会觉得这个操作系统慢,不好用了。

所以作为一个性能测试工程师的主要工作目标就是确保系统能够在一定的硬件、软件环境下达到一定的性能指标。

性能测试(1)-开篇杂谈,布布扣,bubuko.com

时间: 08-19

性能测试(1)-开篇杂谈的相关文章

开篇—杂谈WebGIS

1.前言 我相信大家对百度地图,谷歌地图等相关应用已经是非常熟悉了.通过这些应用,我们可以浏览地图.定位我们自己的位置.查找我们想知道的兴趣点.搜索交通路线等等.而其实,这些功能便是WebGIS的一些最基本的功能. 那么什么是WebGIS呢,说到这里,我还是首先给大家讲讲什么是GIS. 2.GIS简介 2.1 GIS的名词解释 GIS的全名是Geographic Information System,中文全名是地理信息系统.它是在计算机硬.软件系统支持下,对整个或部分地球表层(包括大气层)空间中

微软TTS尝试系列之开篇杂谈(仅思路)

第一次写博客,不知道如何下手,思路也乱,就先聊聊怎么进的园子吧,但愿不会浪费大家太多的宝贵时间>_<. 与博客园结缘应该是大三刚开始的时候.当时学校教务处想开发一个教务安排系统,为了省钱就从系里找人,于是我和另外两个同学就接了下来.Money什么的就不说了,接着了解需求.确定方案和分配任务(第一次做一个整体的小项目,比较乱).我们三个从大二开始学习C#,因此开发使用的是C#和ASP.NET.当时对我们来说有两个棘手的问题:一是这个系统需要将录入的内容生成教务处给定格式的Word文档,二是需要根

经典长文:管理自己(彼得&#183;德鲁克)

本文是<哈佛商业评论>创刊以来重印次数最多的文章之一.作者彼得·德鲁克,自1971年后长期在美国加利福尼亚州克莱尔蒙特研究生大学任教.该文首次发表于1999年,节选自其著作<21世纪的管理挑战>(Management Challenges for the 21st Century,HarperCollins出版社,1999).本文有删节. 我们生活的这个时代充满着前所未有的机会:如果你有雄心,又不乏智慧,那么不管你从何处起步,你都可以沿着自己所选择的道路登上事业的顶峰. 不过,有了

敏捷个人-认识自我,管理自我 v0.8.pdf 下载

2009年我在blog上写了个人管理系列的一些blog,其中一些文章深受大家的喜欢.想到写这个系列是源于在实施敏捷Scrum方法时,对方法实施是否对人的水平需要高要求的一些思考.自组织团队是建立在敏捷个人之上的,没有个人就没有团队,实施Scrum对人要求不高,但想实施得好,那么对人的要求肯定不低. 对于个人来说,工作中的技术水平高低自然会影响到实施的效果,而我更认为认识自我.管理自我相关的软性技能更为重要,特别是对于刚形成的团队来说,没有这些软技能是实施的一大挑战. 现在把以前写的与个人管理相关

动态规划(普及组)

入门篇:动态规划思想 动态规划向来都是OI竞赛生涯中的分水岭. 开篇杂谈 文章中有任何地方不懂可联系我$qq:2832853025$,退役前全天在线. 前置技能 DFS搜索. 记忆化搜索. 递推式.(高中必修五数学) 个人理解 照搬定义肯定不是传授知识的好办法,呢只是老师PPT上面爱放的东西. 在我个人的理解中,动态规划只是搜索的一种优化方法,但是并不可以优化所有的搜索.一般的来说,符合下面三条情况的搜索是可以转化为动态规划的思想来做的. 重叠子问题. 最优子结构. 子问题无后效性. 通俗的借用

WPF 杂谈——开篇简言

这俩年多来笔者一直在从事关于WPF的开发.虽然不能说是专家级别的.但是对于WPF的应用还是有一定的了解.论他的灵活性决对不在WinForm之下.WPF的出现更是引发一段热议.他的何去何从更是让很多人感到迷茫.因为那个时候可以说只有Winow 7才能跟WPF完美的接合.可惜他出不逢时,XP占了大部分的市场.所以WPF的出生动静很大,可惜后力不足,渐渐的淡淡化他的光芒.于至于网络上更是有对WPF的死亡产生了很大的争议.但是这并没有让他沉默下去,这几年来window 8和window 10的推广更是让

http性能测试工具wrk源码学习之开篇

1.前言 最近工作需要测试nginx反向代理的性能,于是找了一些http测试工具,例如经典的Apache的ab.siege.wrk.wrk使用多线程事件驱动方式,支持lua脚本扩展.关于wrk介绍可以参考:https://github.com/wg/wrk.测试http的性能,主要关注的是QPS(每秒处理的请求数目),QPS越高说明web站点的性能越好.测试这个参数,就需要工具能够发生多个连接.涉及到网络编程的一些知识,如何同时使用connect建立多个连接,如何控制connect超时,如何判断

iOS应用架构谈 开篇

iOS应用架构谈 view层的组织和调用方案 iOS应用架构谈 网络层设计方案 iOS应用架构谈 动态部署方案 iOS应用架构谈 本地持久化方案 缘由 之前安居客iOS app的第二版架构大部分内容是我做的,期间有总结了一些经验.在将近一年之后,前同事zzz在微信朋友圈上发了一个问题:假如问你一个iOS or Android app的架构,你会从哪些方面来说呢? 当时看到这个问题正好在乘公车回家的路上,闲来无聊就答了一把.在zzz在微信朋友圈上追问了几个问题之后,我觉得有必要开个博客专门来讲讲一

广州八神软件性能测试课程最新大纲

发帖纪念下本人最近开设的一门软件性能测试方面的课程全部录制完毕, 课程URL是:http://edu.51cto.com/course/course_id-2218.html. 课程注重实战和对重要概念的剖析,整个课程时间超过2000分钟. 同时,也可以加入QQ群:319406535 一起讨论学习. 也可以通过http://www.dataguru.cn/myclassnew.php?mod=new_basicforlesson&op=basic&lessonid=323方式学习,两种方式