管理信息化性能测试进阶指南实战第章性能测试基础.

上传人:精****库 文档编号:137823539 上传时间:2020-07-12 格式:DOC 页数:28 大小:210.61KB
返回 下载 相关 举报
管理信息化性能测试进阶指南实战第章性能测试基础._第1页
第1页 / 共28页
管理信息化性能测试进阶指南实战第章性能测试基础._第2页
第2页 / 共28页
管理信息化性能测试进阶指南实战第章性能测试基础._第3页
第3页 / 共28页
管理信息化性能测试进阶指南实战第章性能测试基础._第4页
第4页 / 共28页
管理信息化性能测试进阶指南实战第章性能测试基础._第5页
第5页 / 共28页
点击查看更多>>
资源描述

《管理信息化性能测试进阶指南实战第章性能测试基础.》由会员分享,可在线阅读,更多相关《管理信息化性能测试进阶指南实战第章性能测试基础.(28页珍藏版)》请在金锄头文库上搜索。

1、目录第一章 性能测试基础21.1 性能测试工程师的标准及挑战21.1.1 性能测试工程考评指标21.1.2 性能测试工程师的挑战31.2 性能测试基础51.2.1 性能51.2.2 性能指标161.2.3 性能分析及调优171.2.4 单机软件性能与网络架构软件221.2.5 性能测试的流程231.2.6 性能测试的注意要点241.2.7 性能测试招聘要求25小结26第一章 性能测试基础软件测试逐步成为软件开发过程中一个必不可少的环节,随着功能测试的必要性被认可,自动化测试和性能测试也逐步崭露头角。我们经常会抱怨浏览网页慢、下载文件慢,其实这都是属于性能问题。用户在得益于功能方面的质量提升后,

2、开始对性能有了新的认识和要求,而性能测试并不像功能测试那样可以“低门槛”进行。性能测试的本质是通过编写一个程序去测试另外一个程序,而正是有了这个相对的“高门槛”,性能测试便成了一个“高薪”、“高技术含量”的工作,新人在看到高手指点江山(性能测试)时,充满了羡慕的眼神,摩拳擦掌准备进入这个行业。在开始从事性能测试工作之前,我们先来看看这个职位的考核标准和面临的挑战。1.1 性能测试工程师的标准及挑战当你掌握了性能测试的基本技能,接着就需要找到一家合适的企业,通过劳动换取经济上的回报,那么通常公司如何去招聘一个性能测试工程师,并如何进行绩效考评呢?即性能测试工程师应该达到的工作目标到底是什么?1.

3、1.1 性能测试工程考评指标在介绍性能测试之前,我们回想一下功能测试的考评和工作内容。如果你是一名功能测试经理,该如何考评你的员工呢?当软件测试刚刚进入中国时,我们对测试的理解是通过模拟用户执行,发现用户可能遇到的问题,而缺陷的数目成了考评的唯一指标。例如PM(Project Manager)规定,每个测试人员每天都要发现10个以上的缺陷,否则说明他在工作态度和工作能力上有一定的缺陷。综上,作为一名功能测试工程师,其考评要求可以归结为一条,那就是测试通过的软件不会被用户发现严重的缺陷。而现在,软件测试逐渐正名,我们对测试的理解从证明软件没有错误变为证明软件具备一定的质量,而功能测试工程师的考评

4、标准也随之发生了变化。功能测试工程师的考评指标主要有以下几点:1 缺陷数目缺陷的数目虽然不能作为主要的考评指标,但是从某一个角度也说明了测试工程师发现问题的能力。在成熟的软件开发公司中,我们能够通过历史数据生成的缺陷质量模型准确预估缺陷数目。如果你发现的缺陷数量明显低于预估,则说明你的工作可能存在一定问题。2缺陷质量有量没有质是不行的,由于计件制的压迫,测试人员往往为了达到数目上的指标而凑缺陷,数目是够了,但是所提的缺陷都是鸡毛蒜皮的事情,缺陷的危害等级和优先级都比较低,那么对软件质量的提升效果会相对较差。在缺陷的质量中包含两个概念:缺陷的严重等级和优先级对缺陷的描述3工作态度测试工作是一个很

5、容易“偷懒”的工作,是需要个人积极主动、追求完美的工作,对于测试工程师,只有具备善于交流、积极主动、“视公为私”的态度才能对被测对象负责。4工作效率在较短的时间内是否能够高质量完成上级布置任务的能力。5文档编写过去所谓的软件测试工程师只是软件测试执行工程师,现在被称为Tester。现在测试工程师还需要进行测试计划、测试方案及用例等文档的编写工作。6团队协作能力7其他相关技能性能测试在国内刚刚开始流行。一个公司招聘性能测试工程师的主要目的是通过对产品进行专业的性能测试,获得一份性能测试评估报告,从而向用户证明本产品能够满足预期的性能需求。随着性能测试职位的逐渐成熟,对这个职位的要求也越来越严格,

6、性能测试的目的不仅仅是为了获得当前系统的性能评估,而是希望进一步通过性能测试发现系统性能瓶颈并修复性能问题。而性能问题的修复成本一般相对较高,如何使用最低的成本换取最高的性能,从而在性价比上找到黄金分割点,将是性能调优的重点。性能测试工程师的考评指标会包括以下内容:1是否能够独立开发脚本能否使用一种或多种性能测试工具完成用户行为的模拟脚本开发工作。2能否对需求进行性能分析并获得性能需求任何测试都是基于需求的。作为一名性能测试工程师,需要具备一定的性能需求分析能力,从而根据用户的需求进行性能测试,得到被测系统与用户需求之间的差距,从而生成性能报告并提供性能调优方案。3能否设计场景及监控负载系统完

7、成对性能测试的实施和监控工作对性能测试进行实施,设计负载规则并监控负载下各个系统的状态。4能否通过性能测试发现比较具体的性能瓶颈具备一定的性能结果分析及瓶颈定位能力。5文档编写与环境搭建的能力独立编写性能测试文档和搭建测试环境的能力。6团队协作能力7其他相关技能1.1.2 性能测试工程师的挑战作为工作了几年的功能测试工程师来说,大家觉得在功能测试工作中的挑战是什么呢?1公司不重视测试2就我一个人做测试3找不到缺陷4开发工程师不能及时修改测试中发现的缺陷5不熟悉业务6不了解功能测试的方法及流程总结来说就是工作内容略感重复、缺乏技术含量,并且在有限的时间和资源下难以达到理想化的目标。在实际工作中,

8、要确保软件没有缺陷是比较困难的,这是因为:1软件不可能不存在缺陷2测试无法发现所有缺陷3测试在大多数情况下都没有足够的资源和时间(在成本和质量上寻求平衡)所以无法完全保证整个软件在交付时不存在缺陷。虽然可以通过各种方法将严重级别或者优先级别较高的问题发现并修复,但由于个人能力或客观原因还是会遗留某些缺陷。那么作为一个性能测试工程师所面临的挑战又有哪些呢?1对性能测试的理论和技术不熟悉2公司不重视性能测试3就我一个人做性能测试4测试出来的结果不知道怎么分析5不熟悉业务6定位出的性能问题无法修正总结来说,就是如何在有限的时间和资源下,保证提交给用户的软件系统可以达到指定的性能需求指标。从某种角度来

9、说,现在性能测试的功效被过度放大了。以功能测试为例,最初软件是无须测试的,因为软件功能单一,而软件质量是依赖于有经验的开发人员自己进行维护,随着开发规模的逐渐扩大,软件越来越复杂,随之质量逐渐下降,这时功能测试的低成本效果就出现了。各大公司开始大规模地成立测试部门,随着功能测试部门的规模逐渐扩大,其效率开始不断下降,依赖于功能测试提高质量的性价比逐渐降低,而现在大家都认识到功能测试并不是万能的,其主要作用是保证软件达到一定的质量,通过自动化可以降低功能测试的成本。性能测试也处在这样一个过程中,由于客户日趋成熟,逐渐意识到性能是继功能后另一个重要的质量指标,而我们常常错误地认为性能测试就是满足用

10、户性能需求的灵丹妙药,掌握了性能测试仿佛就走在了软件测试技术的最高端,却忽略了去思考性能测试到底能做些什么。性能问题并不像功能问题那么棘手,因为几乎常见的性能问题都可以通过硬件解决,也就是花点儿钱买个更加强力的硬件配置来提高软件的效率,其次通过性能测试后发现了性能瓶颈(一般性能瓶颈都是较为底层的问题),修复的成本和风险也是需要考虑的问题。好比功能测试在最后的BETA测试中发现了一个异常严重的功能问题,而该问题是由于引擎所导致的,改还是不改呢?功能是必须要进行修改的,如果不修改用户无法正常使用,但是从性能角度来说,系统处理速度慢一点往往还是能够接受的。往往出现花了很多钱进行性能测试,并且发现了性

11、能问题,但是修复该性能缺陷的成本或风险太高,最终不得不放弃。性能测试无非就是以相对较低的成本模拟一个真实环境来了解系统上线后的性能情况,至于定位、分析及调优,这需要一个团队的支持才能完成,所以软件的性能问题不是简简单单靠最后进行几次性能测试就能定位解决的。1.2 性能测试基础1.2.1 性能性能的定义在新华字典中可以查询到这样的解释:性能指器物所具有的性质与效用。这个定义中包括了以下两层含义:1 性质性质是指该器物具有什么特性,能够做什么。2 效用是指该器物能够干得怎么样。在我们身边的性能有哪些呢?1 F1赛事从竞技比赛的角度来说,在比赛中获胜的一方性能较好,那么是不是性能只包括速度呢?不是F

12、1比赛并不是直道跑1000米,而是有很多转弯,而且赛程也较长。车速并不是获得冠军的唯一指标,而车胎的类型、进出站的次数、驾车选手的发挥等条件组合在一起才是一个冠军诞生的基础。2 个人电脑个人电脑的性能指什么呢?用起来比较快?看起来比较漂亮?我们通常说电脑的性能是指运行常用软件的反应迅速,但是仅仅拥有一颗高级的芯,电脑一定能够性能出众吗?不一定,这还取决于存储器、显卡等相关设备。针对CPU来说,主频也并不是说明CPU性能的唯一指标,并不是说CPU的频率越高,其计算速度越快。例如:现在有两块CPU,一块是奔腾V3.0c主频3GHz,另外一块是酷睿2 T7200主频2GHz,显然T7200的性能远远

13、优于奔腾V。3 软件单位时间内能处理的业务、处理一个运算所需要花费的时间、打开该软件需要的时间,都能作为衡量软件性能的指标。例如在相同的电脑配置下分别安装Windows XP和Windows Vista操作系统。在这两个操作系统中复制大量文件至移动硬盘时,就会发现在Vista下进行相同的操作会比XP慢很多,这个时候就会说在该硬件配置下Vista的磁盘读写性能相对XP较差。失败案例为什么突然开始如此重视性能测试呢?那是因为经历了太多惨痛的经历,让我们不得不重视这个以前被忽视的问题。接着来回顾一下发生在2007年的一件由于性能测试不足而导致的惨痛案例奥运会订票系统瘫痪。2008年8月,对于全国人民

14、来说,没有什么比奥运会更大的事情了。买到一张称心如意的门票,也成了很多人的一个梦想。网上购票、先到先得、人人参与的策略,让大家觉得进入鸟巢观看开幕式,见证这历史性的一刻成为可能。然而当大家在奥运官方售票网上抢购门票时,这个梦想却被网上购票系统的瘫痪击成碎片。我们来思考一个问题,作为一个奥运订票系统应该会有多少人去买票呢?看一下当时的新闻报道:境内公众启动第二阶段奥运会门票预售。然而,为了让更多的公众实现奥运梦想的“先到先得,售完为止”的销售政策适得其反,公众纷纷抢在第一时间订票,致使票务官网压力激增,承受了超过自身设计容量8倍的流量,导致系统瘫痪。超出8倍系统容量?那么接着来看看真正的系统容量

15、是多少呢?昨天上午9点,预售一开始,公众提交申请空前踊跃。北京奥运会官方票务网站的浏览量在第一个小时内达到800万次,每秒钟从网上提交的门票申请超过20万张;票务呼叫中心热线的呼入量超过了380万人次。由于瞬间访问数量过大,技术系统应对不畅,造成很多申购者无法及时提交申请。一个小时访问量达到800万次,通过计算可以得到平均每分钟的访问量约是12万次,而每秒约是2000次。对比自身设计的每小时100万次,每秒的访问量预估为250次左右,你是不是发现系统估计的访问量少得可怜?作为一个门户网站,Sina、Sohu每秒的访问量是多少?需求是不是出了问题?作为百年一遇的奥运会盛典,每个炎黄子孙都会希望亲身在鸟巢感受奥运开幕式的盛况,而一张奥运会门票成了炙手可热的香饽饽,由于采取的是先到先得的策略,为了保证自己能够成为第一个进入系统购票的用户,我们需要确保自己以最快的速度进行订单的操作(提前准备用户注册、表单填写、业务熟悉、网络调整、个人反应速度调整、期待好运降临)。当到达北京时间9点整,马上单击订票按钮。有少数人由于最先进入系统,所以他们顺利地订票成功,而更多用

展开阅读全文
相关资源
相关搜索

当前位置:首页 > 商业/管理/HR > 企业文档

电脑版 |金锄头文库版权所有
经营许可证:蜀ICP备13022795号 | 川公网安备 51140202000112号