??xml version="1.0" encoding="utf-8" standalone="yes"?>
边听歌曲Ҏ键盘Q?br />视频出处Qhttp://www.tudou.com/programs/view/annAfqxLAxk/
1、所谓的试需求就是在目中要试什么。测试活动中Q首先需要明测试需?What)Q才能决定怎么?How)Q测试时?When)Q需要多h(Who)Q测试的环境是什?Where)Q测试中需要的技能、工具以及相应的背景知识Q测试中可能遇到的风险等{,以上所有的内容l合h构成了试计划的基本要素。而测试需求是试计划的基与重炏V?
像软g的需求一P试需求根据不同的公司环境Q不同的专业水^Q不同的要求Q详l程度也是不同的。但是,对于一个全新的目或者品,试需求力求详l明,以避免测试遗漏与误解?
2、ؓ什么要做测试需求分?
如果要成功的做一个测试项目,首先必须了解试规模、复杂程度与可能存在的风险,q些都需要通过详细的测试需求来了解。所谓知q|百战不殆。测试需求不明确Q只会造成获取的信息不正确Q无法对所Y件有一个清晰全面的认识Q测试计划就毫无Ҏ可言。活在自׃界里的h是可悲的Q只凭感觉不做详l了解就下定论的目是失败的?
试需求越详细_ևQ表明对所Y件的了解深Q对所要进行的d内容p清晰Q就更有把握保证试的质量与q度?
如果把测试活动比作Y件生命周期,试需求就相当于Y件的需求规|试{略相当于Y件的架构设计Q测试用例相当于软g的详l设计,试执行相当于Y件的~码q程。只是在试q程中,我们把”Y件”两个字全部替换成了”测试”。这P我们明白了整个试zd的依据来源于试需求?
3、测试需求的依据与收?
试需求通常是以待测对象的Y仉求ؓ原型q行分析而{变过来的。但试需求ƈ不等同于软g需求,它是以测试的观点Ҏ软g需求整理出一个checklistQ作为测试该软g的主要工作内宏V?
试需求主要通过以下途径来收集:
1Q?与待Y件相关的各种文档资料。如软g需求规根{Use case、界面设计、项目会议或与客h通时有关于需求信息的会议记录、其他技术文档等?
2Q?与客hpȝ分析员的沟通?
3Q?业务背景资料。如待测软g业务领域的知识等?
4Q?正式与非正式的培训?
5Q?其他。如果以旧系lؓ原型Q以全新的架构方式来设计或完善YӞ那么旧系l的原有功能跟特性就成ؓ了最有效的测试需求收集途径?
在整个信息收集过E中Q务必确保Y件的功能与特性被正确理解。因此,试需求分析h员必d备优U的沟通能力与表达能力?
4、测试需求的分析
目前不少的书c与|站资料开始重视测试需求的分析Q同时也提出了一些测试需求分析的Ҏ。这里也提出一些自q看法?
试需求需要考虑几个层面的因素:
W一层:试阶段。系l测试阶D,需求分析更注重于技术层面,卌Y件是否实C具备的功能。如果某一U流E或者某一角色能够执行一功能,那么我们怿具备相同特征的业务或角色都能够执行该功能。ؓ了避免测试执行的冗余Q可不再重复试。而在验收试阶段Q更注重于不同角色在同一功能上能否走通要求的业务程。因此需要根据不同的业务需要而测试相同的功能Q以保pȝ上线后不会有意外发生。但是否有必要进行这U大量的重复性质的测试,不过也是见仁见智的做法,要看试理者对试{略与风险的q能力了?
目前Q大多数的测试都会在pȝ试中完成,验收试只是对于pȝ试的回归。此U情况也是合理的Q关键看试周期与资源是否允许,以及各测试阶D늚d划分?
W二层:待测软g的特性。不同的软g业务背景不同Q所要求的特性也不相同,试的侧重点自然也不相同。除了需要确保要求实现的功能正确Q银?财务软g更强调数据的_性,|站服务器所能承受的压力QERP业务程Q驱动程序强调Yg的兼Ҏ。在做测试分析时需要根据Y件的Ҏ来选取试cdQƈ其列入试需求当中?
W三层:试的焦炏V测试的焦点是指Ҏ所的功能点进行分析、分解,从而得?的着重于某一斚w的测试,如界面、业务流、模块化、数据、输入域{。目前关于各个焦点的试也有不少的指南,那些已经是很好的试需求参考了Q在此仅列出业务的试分析Ҏ?
M一套Y仉会有一定的业务,也就是用L该Y件来实现自己实际业务的一个流E。简单的来说Q在做测试需求分析时需要列Z下类别:
1Q?常用的或规定的业务流E?
2Q?各业务流E分支的遍历
3Q?明确规定不可使用的业务流E?
4Q?没有明确规定但是应该不可以执行的业务程
5Q?其他异常或不W合规定的操?
然后Ҏ软g需求理Z务的常规逻辑Q按照以上类别提出的思\Q一一列出各U可能的试场景Q同时借助于Y件的需求以及其他信息,来确定该场景应该D的结果,便Ş成了软g业务的基本试需求?
在做完以上步骤之后,业务流中涉及的各种l果以及中间程分支回顾一遍,定是否q有其他场景可能Dq些l果Q以及各中间程之间的交互可能生的新的程Q从而进一步补充与完善试需求?
5、测试需求的优先U?
优先U别的确定,利于试工作有的攄的展开Qɋ试人员清晰了解核心的功能、特性与程有哪些,客户最为关注的是什么,由此可确定测试的工作重点在何处,更方便处理测试进度发生问题时Q实C同优先别的功能、模块、系l等q代递交或取舍,从而缓和测试风险?
通常Q需求管理规范的客户Q会规定用户需?软g需求的优先U别Q测试需求的优先U可Ҏ其直接定义。如果没有规定项目需求的优先U,则可与客h通,定哪些功能或特性是需要尤其关注的Q从而确定测试需求的优先U?
6、测试需求的覆盖率与覆盖E度
试需求的覆盖率通常是由与Y仉求所建立的对应关pL定的。如果一个Y件的需求已l跟试需求存在了一对一或一对多的对应关p,可以说测试需求已l覆盖了该功能点Q以此类推,如果定了所有的软g需求都建立了对应的试需求,那么试需求的覆盖率便是测试需求覆盖点/软g需求功能点=100%Q但q不意味着试需求的覆盖E度高。因为测试需求的覆盖率只计算了显性的Q即被明规定的功能与特性)因素Q而隐性的Q即没有被明规定但是有可能或不应该拥有的功能与Ҏ)因素q未计算在内。因此根据不断的完善或实际测试中发生的缺P可以Ҏ试需求进行补充或优化Qƈ更新q测试用例中Q以此来提高试需求的覆盖E度?br />
提名理由QMercury Interactive公司的WinRunner是一U企业的功能测试工P用于应用程序是否能够达到预期的功能及正常运行。通过自动录制、检和回放用户的应用操作,WinRunner能够有效地帮助测试h员对复杂的企业应用的不同发布版q行试Q提高测试h员的工作效率和质量,保跨^台的、复杂的企业U应用无故障发布及长期稳定运行?/p>
提名理由QLoadRunner 是一U预系l行为和性能的负载测试工兗通过以模拟上千万用户实施q发负蝲及实时性能监测的方式来认和查N题,LoadRunner 能够Ҏ个企业架构进行测试。通过使用LoadRunner Q企业能最大限度地~短试旉Q优化性能和加速应用系l的发布周期?/p>
提名理由QTestDirector 是业界第一个基于Web的测试管理系l,它可以在您公司内部或外部q行全球范围内测试的理。通过在一个整体的应用pȝ中集成了试理的各个部分,包括需求管理,试计划Q测试执行以及错误跟t等功能QTestDirector极大地加速了试q程?/p>
提名理由QIBM Rational Robot 是业界最尖的功能测试工P它甚臛_以在试人员学习高脚本技术之前帮助其q行成功的测试。它集成在测试h员的桌面 IBM Rational TestManager 上,在这里测试h员可以计划、组l、执行、管理和报告所有测试活动,包括手动试报告。这U测试和理的双重功能是自动化测试的理想开始?/p>
提名理由Q目前的最行的单元测试工hxUnitpd框架Q常用的Ҏ语言不同分ؓJUnitQjavaQ,CppUnitQC++Q,DUnit QDelphi Q,NUnitQ?netQ,PhpUnitQPhp Q等{。该试框架的第一个和最杰出的应用就是由Erich Gamma Q《设计模式》的作者)和Kent BeckQXPQExtreme ProgrammingQ的创始?Q提供的开放源代码的JUnit?/p>
提名理由QBorland SilkTest 2006属于软g功能试工具Q是Borland公司所提出软g质量理解决Ҏ的套件之一。这个工具采用精灵设定与自动化执行测试,无论是程序设计新手或资深的专安能快速徏立功能测试,q分析功能错误?
提名理由QMicrosoft Web Application Stress Tool 是由微Y的网站测试h员所开发,专门用来q行实际|站压力试的一套工兗透过q套功能强大的压力测试工P您可以用少量的Client端计机仿真大量用户上线对网站服务所可能造成的媄响?/p>
提名理由QJtest是parasoft公司推出的一N对java语言的自动化白盒试工具Q它通过自动实现java的单元测试和代码标准校验Q来提高代码的可靠性。parasoft同时出品的还有C++ testQ是一ƾC/C++白盒试工具?/p>
提名理由Qwebload是RadView公司推出的一个性能试和分析工P它让web应用E序开发者自动执行压力测试;webload通过模拟真实用户的操作,生成压力负蝲来测试web的性能?/p>