首页>参考读物>计算机科学与技术>软件与程序设计

Web应用程序性能测试指南
作者 : J.D.Meier;Carlos Farre;Prashant Bansode;Scott Barber;Dennis Rea
译者 : 韩平 董启雄
出版日期 : 2008-10-08
ISBN : 7-111-24940-5
定价 : 35.00元
扩展资源下载
扩展信息
语种 : 简体中文
页数 : 206
开本 : 16开
原书名 : Performance Testing Guidance for Web Applications
原出版社:
属性分类: 店面
包含CD :
绝版 : 未绝版
图书简介

“通过权衡主要因素,在设计中对之加以考虑,然后仔细跟踪这些因素,就能够帮助应用软件取得良好的性能。因此,类似于本书的书籍,其最大的作用就是,帮助读者更加广泛地了解所有的影响因素,以便在实际测试的时候可以提供更多更好的选择。幸运的是,本书完全发挥了这样的作用。”
  ——Rico Mariani,Microsoft Visual Studio首席架构师

  本书详细清楚地介绍了与性能测试相关的基础知识。通过学习这些知识,读者可以构建端对端的方法来实现性能测试。无论性能测试新手,还是寻求改进自己目前的性能测试方法的测试员,都可以在本书中找到适合自己需要的内容。

  本书主要内容:
  ■在动态(如Agile)和结构化(如CMMI)环境中,管理和执行性能测试。
  ■性能测试,包括负载测试、压力测试和其他与性能相关的测试类型。
  ■性能测试的核心活动:确定目标、设计测试、执行测试、分析结果并作出报告。

   这个团队为Microsoft平台提供经过Microsoft公司验证的建议,内容涉及如何设计、开发、配置以及运行结构合理健全的应用软件。
  ■理解经过验证的体系架构、设计以及实现模式。
  ■复用经过测试的、性能调整的源代码和应用软件块。
  ■进行安全性、性能以及可伸缩性工程实践。
  ■更快、更可信地构建企业级.NET应用软件。
  要了解更多微软模式&实践团队的信息,请访问:http://msdn.microsoft.com/practices。

图书特色

图书前言

前言
本书提供了一种端对端的方法来实现性能测试。无论对于性能测试新手,还是对于希望改进自己的性能测试方法的熟练者来说,他们都可以直接了解到适合自己所需的内容。
本书中的“信息”来自于对客户场景的实际处理。它反映了从众多性能测试专业人员中所吸取的经验教训。本书采用了基于任务的章节结构,具体如下:
 第一部分“性能测试简介”:简单介绍了性能测试的常见类型、关键概念以及在性能测试中使用的一系列常见术语。
 第二部分“典型性能测试方法”:详细解释了性能测试的7种核心活动。本部分还介绍了如何在不同的软件开发方法中进行性能测试,包括Agile和CMMI软件开发方法。
 第三部分“确定测试环境”:说明如何收集性能测试所需的项目信息。这些信息包括:系统架构、物理部署、用户活动以及相关的批处理过程。
 第四部分“确定性能验收标准”:表明如何确定性能测试目标。从本章还可以了解到,如何从性能测试的角度,明确划分各种性能总目标和需求层次。
 第五部分“计划和设计测试”:指导如何模拟工作负载和用户经验,以设计出更有效的性能测试。
 第六部分“执行测试”:介绍实际性能测试中的主要活动。
 第七部分“分析结果并作出报告”:说明如何根据报告的目的和受众,以一种有效的方式来组织和呈现所发现的内容。
 第八部分“性能测试技术”:展示用于进行负载和压力测试的核心技术方法。

本书的应用范围
本书主要关注Web应用软件性能测试。本书针对以下几个方面提供了建议:
 在动态(如Agile)和结构化(如CMMI)的环境中,管理和进行性能测试。
 性能测试,包括负载测试、压力测试以及其他与性能相关的测试。
 性能测试的核心活动:确定目标、设计测试、执行测试、分析结果以及提供报告。

虽然本书中所涉及的许多主题,都同样可以应用于其他类型的应用软件,但是为了保持规范性,所有的内容都是从Web应用软件的角度来阐述的,并且保证,对于绝大多数预期读者来说,所有的概念都是以一种最直觉的方式来呈现的。
本书并不将自己的范围限定于某个或某些工具软件。这意味着,虽然某些技术或者概念需要依赖于利用某些特定类型的工具软件,但是书中所呈现的任何概念都不是必须通过某一个特定的工具软件才能实现。
本书并没有直接具体介绍如何进行性能调整。性能调整在很大程度上是基于特定的应用软件和技术的,并不是非常适合本书的风格和格式,因此本书没有对其进行详细介绍。但是,围绕着性能测试和性能调整活动的相互交叉和反馈,本书提供了一些更高级的方法。

编写本书的理由
我们编写本书想要达到如下目的:
 吸取从现实中得到的、与性能测试相关的经验教训。
 为端对端的性能测试工作提供一个指引。
 缩小技术发展水平和实践经验水平之间的差距。

本书特点
 性能测试方法。在本书中,将性能测试划分成各个不同的逻辑单元,以帮助读者在整个应用软件的生存周期中逐步采用性能测试方法。
 原理和实践。原理和实践是本书的基础,为后面的具体操作建议提供了一个坚实的基础。同时也反映了在性能测试领域中所使用的成功方法。
 过程和操作方法。过程和操作方法提供了管理和执行性能测试工作的步骤。出于简化和切实可行的目的,将它们划分为输入、输出和步骤。读者可以在了解这些步骤的基础上,确定自己的操作步骤。
 生存周期法。对于如何在整个应用软件的生存周期中都持续管理性能测试工作,本书也提供了端对端的指导,可以降低风险并且减少总拥有成本(Total Cost of Ownership,TCO)。
 模块化。本书中的每一章都可独立阅读。并不需要从头读到尾才能够有所收获。可以只看所需要的章节。
 整体性。在编著本书时,我们充分考虑到了整体性要求。如果从头到尾阅读本书,就会发现,它的章节组织非常完备。整体阅读本书,其效果将远远大于单独阅读各章节。
 相关专家经验。本书陈述了来自众多专家的真知灼见,这些专家包括Microsoft公司各个部门的专家以及性能测试领域内的客户。

本书的读者
本书主要定位是:为那些急需进行有效性能测试工作的个人提供资源、模式以及实践经验。

如何阅读本书
读者既可以从头到尾阅读本书,也可以只阅读相关的部分或者章节。既可以在测试团队中完全利用本书作为指南,也可以只截取本书中的关键部分来满足高级需求。

本书使用方式
可以通过多种方式来使用这本全面的指南。下面给出一些建议:
 作为指南。通过本书学习如何管理性能测试工作。本书汇集了诸多相关专家在实践中获取的经验和教训。
 作为参考书。将本书作为参考书,通过它了解到在性能测试中什么该做,什么不该做。
 将性能测试融合到应用软件的开发生存周期中。采纳本书中有用的方法和实践,并且将它们融合到应用软件的生存周期中。
 利用本书设计性能测试。在设计应用软件时,充分利用本书中所提供的原理和最佳实践方法。这样可以吸取已有的经验教训。
 开展培训。根据本书中所使用的概念和技术,进行相关培训。

本书的组织结构
读者既可以从头到尾阅读本书,也可以选择只阅读对自己的工作有所帮助的章节。

具体构成
本书分为8个部分:
 第一部分,性能测试简介
 第二部分,典型性能测试方法
 第三部分,确定测试环境
 第四部分,确定性能验收标准
 第五部分,计划和设计测试
 第六部分,执行测试
 第七部分,分析结果并作出报告
 第八部分,性能测试技术

第一部分性能测试简介
 第1章Web应用软件性能测试基础知识
 第2章性能测试类型
 第3章性能测试所强调的风险
第二部分典型性能测试方法
 第4章Web应用软件性能测试核心活动
 第5章采用迭代法来调整性能测试
 第6章管理敏捷性能测试周期
 第7章管理可调控(CMMI)环境中的性能测试周期
第三部分确定测试环境
 第8章评估系统以提高性能测试的有效性
第四部分确定性能验收标准
 第9章确定性能测试目标
 第10章量化最终用户响应时间目标
 第11章确定性能验收标准的各种类型
第五部分计划和设计测试
 第12章为应用软件的使用建模
 第13章确定个别用户数据与变化
第六部分执行测试
 第14章测试执行
第七部分分析结果并作出报告
 第15章针对性能测试员的关键数学原理
 第16章性能测试报告基础
第八部分性能测试技术
 第17章Web应用软件的负载测试
 第18章Web应用软件的压力测试

本书采用的方法
任何测试活动的主要任务都是收集信息,以帮助相关利益方对所测试应用软件的整体质量作出明智的决定。此外,性能测试还侧重于帮助确定系统中的瓶颈,调整系统,为将来的测试建立一个基准,并且确定符合性能总目标和需求。此外,在应用软件进入实际应用阶段时,从性能测试中得到的结果和分析可以帮助确立用于支持应用的硬件配置。



本书中采用的性能测试方法由下列活动组成:
 活动1:确定测试环境。确定物理测试环境、生产环境以及测试团队可利用的工具和资源。物理环境包括硬件、软件以及网络配置。在测试开始时就对整个测试环境有一个全面的了解,可以使得测试设计和计划更加有效,并且有利于在项目初期就确定测试中的复杂问题。在某些情况下,在项目的整个生存周期中,都必须阶段性地重复这个过程。
 活动2:确定性能验收标准。确定响应时间、吞吐量、资源利用总目标和限制。一般来说,响应时间是用户关心的焦点,吞吐量是业务关心的焦点,资源利用则是系统关心的焦点。此外,需要确定项目成功标准。这个标准可能并不包含在上面所确定的总目标和限制之中。例如,利用性能测试来评估怎样组合相关的配置设置才可以带来最佳性能特征。
 活动3:计划和设计测试。确定关键场景;确定典型用户的可变性,以及如何模拟这种可变性;确定测试数据;确定需要收集的度量值。将这些信息整合到一个或者多个系统使用情况模型中,以进行实现、执行和分析。
 活动4:配置测试环境。随着需要测试的功能和组件的完善,逐步为每个策略准备执行所需的测试环境、工具以及资源。确保测试环境已经配置妥当,可以进行资源监控。
 活动5:实现测试设计。根据测试设计逐步展开性能测试。
 活动6:执行测试。执行和监控测试。保证测试、测试数据以及结果收集有效。监控测试和测试环境,确保进行有效的测试以保障结果分析的正确性。
 活动7:分析结果、报告以及重复测试。整合并共享结果数据。不仅要对单个数据进行分析,还要从一个功能交叉的测试团队的角度来分析数据。重新确定剩余测试的优先次序,如果需要的话,重新执行这些测试。如果所有度量都在可接受的范围内,没有违反任何预设阈值,并且收集到了所有需要的信息,就完成了基于特定配置的特定场景下的测试。

信息反馈
我们已经进了最大努力来保证本书及其附件中所有内容的精确性。如果你对本书有任何意见和建议,敬请发送邮件到PerfTest@microsoftcom。
我们尤其希望收到下面两种反馈意见:
 推荐特殊技术的问题
 有效并具有可用性的问题

本书的作者团队
编写本书的所有作者如下所列:
 JDMeier
 Carlos Farre
 Prashant Bansode
 Scott Barber
 Dennis Rea

撰稿人和审阅人
Alan Ridlehoover;Clint Huffman;Edmund Wong;Ken Perilman;Larry Brader;Mark Tomlinson;Paul Williams;Pete Coupland;Rico Mariani

外部撰稿人和审阅人
Alberto Savoia;Ben Simo;Cem Kaner;Chris Loosley;Corey Goldberg;Dawn Haynes;Derek Mead;Karen NJohnson;Mike Bonar;Pradeep Soundararajan;Richard Leeke;Roland Stens;Ross Collard;Steven Woody

反馈
如果本书对你有任何帮助,我们都将非常乐于知晓。可以通过一段简短的文字,告诉我们你遇到了什么样的问题,然后如何利用本书来解决问题。请发送邮件到:MyStory@Microsoftcom。

封底文字

“通过权衡主要因素,在设计中对之加以考虑,然后仔细跟踪这些因素,就能够帮助应用软件取得良好的性能。因此,类似于本书的书籍,其最大的作用就是,帮助读者更加广泛地了解所有的影响因素,以便在实际测试的时候可以提供更多更好的选择。幸运的是,本书完全发挥了这样的作用。”
  ——Rico Mariani,Microsoft Visual Studio首席架构师

  本书详细清楚地介绍了与性能测试相关的基础知识。通过学习这些知识,读者可以构建端对端的方法来实现性能测试。无论性能测试新手,还是寻求改进自己目前的性能测试方法的测试员,都可以在本书中找到适合自己需要的内容。

  本书主要内容:
  ■在动态(如Agile)和结构化(如CMMI)环境中,管理和执行性能测试。
  ■性能测试,包括负载测试、压力测试和其他与性能相关的测试类型。
  ■性能测试的核心活动:确定目标、设计测试、执行测试、分析结果并作出报告。

   这个团队为Microsoft平台提供经过Microsoft公司验证的建议,内容涉及如何设计、开发、配置以及运行结构合理健全的应用软件。
  ■理解经过验证的体系架构、设计以及实现模式。
  ■复用经过测试的、性能调整的源代码和应用软件块。
  ■进行安全性、性能以及可伸缩性工程实践。
  ■更快、更可信地构建企业级.NET应用软件。
  要了解更多微软模式&实践团队的信息,请访问:http://msdn.microsoft.com/practices。

图书序言

序言一
测试Web应用软件的性能并不难。但是,在测试过程中,很容易设计出不切实际的场景,当然也会经常收集到和测量出一些不相关的性能数据。甚至,即使想方设法设计出了全面的场景,并且收集到了正确的数据,也很容易使用错误的统计方法来总结和呈现结果。
从20世纪90年代末期开始,我历经整个Internet泡沫时代的高峰,花费了大量的时间来测试Web应用软件的性能。在此期间,我设计和领导实现了几个关键任务的Web性能测试工作,并且为一些著名的Internet公司提供了测试服务。我能与每个公司的性能专家一起工作,可以了解到一些内情,同时也非常担忧。参与Web应用软件性能测试的绝大多数工程师,都非常聪明、勤勉并且专心敬业。他们投资购买了昂贵的软件和硬件,阅读相关参考书籍,严格遵照当时所能提供的最佳方法。但是,不知何故,他们的性能测量和预报结果与真实情况并不相符。在某些情况下,他们高估了所测试的Web应用软件的性能和可伸缩性,从而导致在配置这个Web应用软件时,出现了令人为难且代价高昂的系统性事故;在另外一些情况下,可能又低估了应用软件的容量和可伸缩型,从而导致不必要的硬件和基础设备浪费。这些测试中所犯的错误影响巨大:某些测试高估或者低估实际性能和容量的范围超过了一个数量级,甚至更多!这怎么可能发生呢?
根据我的经验,在Web应用软件性能测试中出现的绝大部分严重问题,都是因为过度简化。更为确切地说,这些简化包括用户行为过度简化,以及在总结和报告测试结果时的过度简化。设想一下,如果一个交通工程师在估算某一段新建高速公路的流量模式时,假设绝大多数司机都以相同的速度行驶、以相同的加速度加速、休息同样长的时间,并且决不会改变路线,最后会产生怎样的后果。这是一个简单但又毫无意义的场景。或者,设想一下,这个交通工程师提供报告说,因为平均时速可以达到57英里/小时,所以不存在交通流量问题,但是他完全没有考虑,在交通高峰时期,平均速度只有25英里/小时。这是一个简单、但是完全错误的结果。遗憾的是,绝大多数Web应用软件性能测试员和这个假设的交通工程师一样,都犯下了过度简化的错误,或者比之更甚。
我完全赞成简化,但是正如阿尔伯特·爱因斯坦曾经说过的那样:“将任何事情做得尽可能的简单,但不是更简单”。在Web应用软件性能测试工作中,这就是我们需要学习的,非常重要并且必不可少的一课。本书的各位作者充分展现了他们的热情、经验以及通过辛苦努力所获得的知识,尽最大可能给读者提供广泛的、全面的、可扩展的知识基础,保证读者可以采用正确的方法来完成Web性能测试工作。本书并没有详细讨论各种不必要的细节,但是它保证读者肯定会了解并且决不会忽略,在设计、执行和分析测试的各个过程中所必须考虑的关键参数和变量。
对于Web性能测试新手来说,本书将会引导你走上一条正确的道路,避免浪费大量时间并且陷于窘境。即使对于经验丰富的Web性能测试老手来说,我也相信,本书将会提供一些新的见解。很可能,当读到某些常见和熟悉的错误时,你可能会多次扼腕叹息。总之,本书应当是每个Web性能测试工程师书架上的必备书之一。





Alberto Savoia是以下三本书的作者:《The Science and Art of Web Site Load Testing》、《Web Load Test Planning》和《Trade Secrets from a Web Testing Expert》。

Alberto Savoia
Agitar软件公司的创始人兼首席技术官
2007年7月




序言二

如果有什么工作可以视为比性能调整更为神秘的、令人不可思议的艺术,那一定就是性能测试。
如果你曾经在Microsoft公司内部的各个不同团队中都工作过,你就会发现,不同的做法将会带来不同程度的成功。几乎所有人都会发誓说,他们所采用的无疑都是最适合他们自己的做法,只有极少数诚实的人,可能会比较谦虚一些。某些人当然有足够的理由如此自信,因为他们真正在自己的研究领域下了一番功夫。至少就我自己的经验而言,其他公司中的情况和我所工作的Microsoft中的情况,似乎并没有什么两样,同样也是鱼龙混杂。
如果要求我必须用一个词来形容我在性能测试领域中最常见到的问题,那它就是缺乏权衡。在性能测试过程中,有许多需要考虑的因素,测试团队往往倾向于过度关注某些因素,因此常常会无视他们所忽略的那些因素。例如,也许只考虑了吞吐量,但是忽略了资源消耗;或者只考虑等待时间,但是忽略了通信畅通;又或者,只考虑成本,但是忽略了可伸缩性。
如果在设计过程中,仔细考虑各个关键因素,平衡其中的关系,并且在实施过程中不断跟踪调整,就可以获得良好的性能。因此,本书之类的书,它们的最大意义就在于,让读者可以全面了解到所有影响测试过程的因素,从而便于读者在实施具体的测试方案时,可以有一个详尽的、最好的选择。幸运的是,本书完全达到了这个目的。
本书非常详细地介绍了一些最重要的考虑因素,包括:如何理解和量化预期的终端用户体验,如何选择用于研究的关键资源,如何以更具统计学意义的方式来总结测试结果,以及如何在各个不同的软件生存周期中恰当地应用这些实践成果。虽然本书主要侧重于介绍Web应用软件的性能测试,但是实际上,它所提供的内容非常通用,易于适用其他各种类型的应用软件。
伟大的设计来自于以预期的代价取得预期的结果。实际上,我想说的是,如果不度量就不是设计。本书提供了足够的性能测试基础知识,足以满足读者未来进行的性能测试工作的需要。





Rico Mariani于1988年开始就职于微软公司,最初的工作是用Microsoft C version 60编写语言产品,直到Microsoft Visual C++ version 50 开发系统发布。1995年,Rico成为后来被称之为“Sidewalk”项目的开发经理。从此开始,在长达7年的时间内,他一直致力于各种MSN技术的研究。2002年夏天,Rico回到研发部门,成为CLR团队的性能架构工程师。他出色的工作表现使其荣任Visual Studio的首席架构师。Rico关注的领域和爱好包括:编译器和语言原理、数据库、3D艺术以及科幻小说。


Rico Mariani
Visual Studio首席架构师
微软公司
2007年7月

作者简介

J.D.Meier;Carlos Farre;Prashant Bansode;Scott Barber;Dennis Rea:暂无简介

译者简介

韩平 董启雄:暂无简介

译者序

随着Internet的迅速普及,网络已经完全融入了人们的日常生活中,从浏览新闻、购物到聊天,Web应用软件占据了越来越重要的地位。而Web应用软件的性能测试工作,因为在软件的质量保证中起着重要的作用,所以也日益受到项目管理者、开发人员等的重视。
  性能测试的目的是验证应用软件是否能够达到开发人员、用户等所提出的性能指标,同时发现应用软件中存在的性能瓶颈,从而优化应用软件,最后达到优化系统的目的。
  Web应用软件的性能测试涵盖了广泛的内容,包括容量测试、组件测试、耐力测试、压力测试、冒烟测试和部件测试等各种与性能相关的测试。在性能测试过程中,需要考虑诸多的因素,但是由于需要考虑的因素过多,常常会忽略某些没有引起足够重视的因素,从而导致性能测试工作的失败。本书从与性能测试相关的基本知识开始,详细介绍了各种性能测试类型、性能测试的7种核心活动、如何确定测试环境、如何确定性能验收标准,以及最终如何对性能测试获取的数据加以分析并写出最终报告等。本书层次清晰、结构完善、内容丰富,是作者们长期从事性能测试工作的经验和实践的总结和升华。无论刚涉足性能测试的新手,还是经验丰富的性能测试专家,都可以从中受益。
  本书的翻译工作由韩平组织,主要由董启雄、韩平、卢敏、李波负责翻译。参加翻译工作的还有程永敬、张宝玲、汪顶武、张旭、安志琦、费玮、谷麦征等。
由于时间有限,加之译者的精力和能力所限,尽管我们已经尽了最大的努力,但书中仍然可能存在不少不尽人意之处,敬请读者不吝指正!您可以通过yeyuhan2001@sinacom与译者交流。
  韩平
  2008年5月

图书目录

译者序

序言一

序言二

前言

第一部分性能测试简介

第1章Web应用软件性能测试
基础知识

11概述

12如何使用本章

13性能测试的核心活动

14为什么进行性能测试

15项目环境

16性能测试和调整之间的关系

161协同工作

162性能调整过程概述

17性能、负载和压力测试

18基准

19基准程序法

110术语

111小结


第2章性能测试类型

21概述

22如何使用本章

23性能测试

24性能测试的主要类型

25主要性能测试类型的优点总结表

26附加概念和术语

27小结


第3章性能测试所强调的风险

31概述

32如何使用本章

33不同性能测试类型可以降低的
风险一览表

34与速度相关的风险

35与可伸缩性相关的风险

36与稳定性相关的风险

37小结


第二部分典型性能测试方法

第4章Web应用软件性能测试
核心活动

41概述

42如何使用本章

43活动概述

44核心性能活动测试表

45核心性能测试活动执行顺序

46活动1:确定测试环境

47活动2:确定性能验收标准

48活动3:计划和设计测试

49活动4:配置测试环境

410活动5:实现测试设计

411活动6:执行测试

412活动7:分析结果、撰写报告以及
重复测试

413小结


第5章采用迭代法来调整性能测试

51概述

52如何使用本章

53方法介绍

54迭代性能测试活动

55与核心性能测试活动的关系

56活动1:了解项目愿景和环境

57活动2:确定进行性能测试的原因

58活动3:确定性能测试给项目带来
的价值

59活动4:配置测试环境

510活动5:确定和协调任务

511活动6:执行任务

512活动7:分析结果并作出报告

513活动8:重新审视活动1~3,考虑
性能验收标准

514活动9:重新确定任务的优先
次序

515小结


第6章管理敏捷性能测试周期

61概述

62如何使用本章

63方法介绍

64敏捷性能测试活动

65与核心性能测试活动的关系

66活动1:了解项目愿景和环境

661项目愿景

662项目周边环境

663理解系统

664理解项目环境

665理解性能构建时间进度

67活动2:确定执行性能测试的
原因

68活动3:确定性能测试给项目带来
的价值

69活动4:配置测试环境

610活动5:确定和协调任务

611活动6:执行测试

612活动7:分析结果和报告

613活动8:回访活动1~3,考虑性能
验收标准

614活动9:重新划分任务的优先级

615附加考虑

616小结


第7章管理可调控(CMMI)环境中的
性能测试周期

71概述

72如何使用本章

73方法介绍

74CMMI性能测试活动


75与核心性能测试活动之间的关联

76CMMI性能测试活动流程

77活动1:了解过程文档和规范性
标准

771确定过程

772确定规范性标准

78活动2:了解系统和项目规划

781理解系统

782重新审视项目计划

79活动3:确定性能验收标准

791性能需求

792性能目标

793性能测试指标

710活动4:规划性能测试活动

7101将工作内容与项目计划相
对应

7102添加期限

7103根据阶段确定工作项目的
优先级

7104细化计划

711活动5:设计测试

7111确定关键场景的导航通路

7112确定单个用户数据和差异

7113确定场景的相对分布

7114确定目标负载水平

7115确定执行测试期间需要捕捉
的度量

7116注意事项

712活动6:配置测试环境

713活动7:实现测试设计

714活动8:执行工作项目

715活动9:报告结果,归档数据

716活动10:修改计划,并就修改
取得一致意见

717活动11:返回活动5

718活动12:准备最终报告

719小结


第三部分确定测试环境

第8章评估系统以提高性能测试的
有效性

81概述

82如何使用本章

83评估系统的方法

84捕捉系统功能和(或者)业务过程

85捕捉用户活动

86捕捉逻辑和物理的体系架构

861逻辑体系架构

862物理体系架构

863系统体系架构

864注意事项

87小结


第四部分确定性能验收标准

第9章确定性能测试目标

91概述

92如何使用本章

93术语

94确定性能测试目标的方法

95确定性能测试目标

951确定综合目标

952审查项目计划

953检查结构

954询问团队成员

96捕捉或者估计资源利用指标和
极限

97捕捉或者估计资源预算

98确定度量

99交流结果

910留意变化的目标、指标和预算

911案例研究——确定性能测试
目标

9111案例研究1

9112案例研究2

9113案例研究3

912小结


第10章量化最终用户响应时间
目标

101概述

102如何使用本章

103术语

104量化最终用户响应时间的方法

105确定应用软件的功能和用法

106描述与捕捉性能需求和目标

1061检查项目文档与相关的
合同

1062会见可能会影响“开始运作”
决定的相关利益方

1063确定是否存在与该应用软件
有关的相关标准和(或者)竞
争底线

107量化性能需求和目标

1071区分要求与目标

1072量化捕捉的性能目标

1073量化捕捉的性能需求

108记录性能需求与目标

109小结


第11章确定性能验收标准的各种
类型

111概述

112如何使用本章

113术语

114确定验收标准的方法

115调研最终用户需求

116收集商业需求

117确定技术需求

118研究标准、规范性与合同

119建立性能测试目标

1110比较并整理性能特征

1111审查并更新实施计划

1112小结


第五部分计划和设计测试

第12章为应用软件的使用建模

121概述

122如何使用本章

123模拟应用软件使用情况的方法

124确定指标

125确定关键使用场景

126确定关键场景的导航路径

127确定个人用户数据与变化

128确定场景的相对分布

129确定目标负载水平

1291确定应用软件使用量:
理论

1292确定应用软件的使用量

1293整合模型变化

1294注意事项

1210准备实现模型

1211小结


第13章确定个别用户数据与变化

131概述

132如何使用本章

133用户延时

134对用户延时不正确建模的结果

1341第一步:确定用户延时

1342第二步:应用延迟范围

1343第三步:应用分布

135确定个体用户数据

136用户放弃

137小结


第六部分执行测试

第14章测试执行

141概述

142如何使用本章内容

143测试执行的方法

144确认测试环境

145验证测试

1451动态数据

1452测试验证

1453注意事项

1454询问的问题

146运行测试

1461有效并高效运行的关键

1462注意事项

1463询问的问题


147基准与基准程序方法

1471基准

1472基准程序方法

148归档测试

149小结


第七部分分析结果并作出报告

第15章针对性能测试员的关键
数学原理

151概述

152如何使用本章

153范例数据集

1531数据集摘要

1532数据集A

1533数据集B

1534数据集C

154平均值

155百分点

156中位数

157正常值

158标准偏差

159均匀分布

1510正态分布

1511统计显著性

1512统计学相等

1513统计学离群点

1514置信区间

1515小结


第16章性能测试报告基础

161概述

162如何使用本章

163有效报告原则

1631早报告,常报告

1632可视化报告

1633直觉的报告

1634使用正确的统计学

1635正确地整理数据

1636有效地汇总数据

1637为预期的用户定制报告

1638利用简洁的口头汇总

1639使数据可以利用

164经常报告的性能数据

1641最终用户响应时间

1642资源利用

1643容量、能力与速度

1644组件响应次数

1645趋势

165报告要回答的问题

1651全部规则

1652主要的相关利益方

1653项目级管理人员

1654技术团队成员

166共享结果的类型

1661原始数据显示

1662技术报告

1663相关利益者报告

167创建一个技术报告

1671样本结果图形

1672针对单一实例测量的样本
表格

1673样本工作负载模型图形

1674样本测试环境图形

1675样本汇总说明

1676样本参考部分

168创建一个相关利益方报告

1681样本条件说明

1682样本结果图形

1683单一实例测量的样本表格

1684基于标准的样本结果汇总

1685样本工作负载模型图形

1686样本测试环境图形

1687样本观察与建议说明


1688样本参考部分

169小结

第八部分性能测试技术

第17章Web应用软件的负载测试

171概述

172如何使用本章

173输入

174输出

175负载测试的方法

176第一步:确定性能验收标准

177第二步:确定关键场景

178第三步:创建一个负载模型

179第四步:确定目标负载水平

1710第五步:确定度量

1711第六步:设计具体的测试

1712第七步:运行测试

1713第八步:分析结果

1714小结



ⅩⅦ

第18章Web应用软件的压力测试

181概述

1811压力条件示例

1812压力相关征兆示例

182如何使用本章

183输入

184输出

185压力测试的方法

186第一步:确定测试目标

187第二步:确定关键场景

188第三步:确定工作负载

189第四步:确定度量

1810第五步:创建测试案例

1811第六步:模拟负载

1812第七步:分析结果

1813压力测试的使用场景

1814探索性压力测试

1815小结

教学资源推荐
作者: [美]埃里克 S. 罗伯茨(Eric S. Roberts) 著
作者: 谢满德 邵俊 编著
作者: 郑阿奇 主编 丁有和 编著
作者: 郑阿奇,梁敬东
参考读物推荐
作者: [德] 彼得·佐默霍夫(Peter Sommerhoff)著
作者: [美] 马克·理查兹(Mark Richards) [美]尼尔·福特(Neal Ford) 著
作者: (美)Jason Bentrum, James Whatley