软件测试作业指导书.doc
《软件测试作业指导书.doc》由会员分享,可在线阅读,更多相关《软件测试作业指导书.doc(73页珍藏版)》请在咨信网上搜索。
1、软件测试作业指导书测试作业指导书基础篇5001什么是软件缺陷(bug)5002影响软件质量的原因5003提高软件质量的方法6004软件测试的目标与定义6005软件测试中的原则7006如何成为一个好的软件测试员9007软件测试的阶段划分11008测试用例的设计方法1201测试用例的特征:1202测试用例的设计原则1203等价类划分方法1204边界值分析方法1405因果图方法1706判定表驱动分析方法1907功能图分析方法2308场景设计方法2409测试用例设计综合策略2410测试用例的设计步骤25009软件测试的基本方式2501黑盒测试2502白盒测试2503静态测试2504动态测试25010软
2、件测试的基本方法2501过测试和失败测试2502等价类划分2603数据测试2604状态测试2605其它黑盒测试方法28实践篇30001测试流程图30002测试准备31003如何做好式样理解31004关于测试用例的设计31005测试数据的准备32006测试的实施33007测试过程中的变更管理34008如何填写QA票和bug票34009文档管理工具(cvs)的使用35010bug管理工具(QAMS)的使用35基础篇001什么是软件缺陷(bug)1 软件未达到产品说明书表明的功能计算器的产品说明书可能声称它能够准确无误的进行加、减、乘、除运算。如果按下加号(+)键,结果什么反应也没有,根据该条规则,
3、这就是个软件缺陷。假如得到错误的答案,根据规则,同样是软件缺陷2 软件出现了产品说明书指明不会出现的错误产品说明书可能声称计算机永远不会崩溃、锁死或者停止反应。假如狂敲键盘会使计算器停止接受输入,根据本条规则,这是一个软件缺陷3 软件功能超出产品说明书指明范围假如我们发现除了加减乘除之外计算器还能够求品方根,而这一功能哪儿都没提。干劲十足的程序员加入这项功能可能因为觉得这是一项创举,根据本条规则,这是软件缺陷。4 软件未达到产品说明书虽未指出但应达到的目标这条规则可能让人感觉有些矛盾和奇怪,可是这样是为了抓住产品说明书上遗漏之处。在测试计算器时,会发现电池没电会导致计算机不正确。没有人会考虑应
4、如何应付这种情况,使计算机反应正常,而盲目以为电池永远充分了电。测试要持续进行到电池完全没电,是少要看到电力不足的迹象。产品说明书指出电力不足无法正确计算,但未指出会怎样,根据本条规则,这是软件缺陷。5 软件测试人员认为软件难以理解、不易使用、运行速度缓慢,或者最终用户认为不好。本条规则是全面的。软件测试人员是第1个真正使用软件的人。如果发现某些地方不对劲,无论什么原因,都要认定为软件缺陷。对于计算器来说,可能觉得按键太小;可能等号(=)键的位置放得不好按;可能显示屏在亮光下很难以看清,根据本条规则,这些都是缺陷。注意:每一个使用过一些软件的人都会对如何改进有一些要求和意见。要编写令所有用户都
5、喜欢的软件是不可能的。作为软件测试人员,在运用第5条测试规则时应记住这一点。最好能全面地客观评价,做到合情合理。002影响软件质量的原因影响软件质量的原因很多,具体地说,主要有以下几点:1 用户原因需求不清;二义性2 产品说明书没有产品说明书;说明书不够全面、经常更改3 设计方案与产品说明书是一样的,片面、易变4 交流不够、交流上有误解或者根本不进行交流在应用应该做什么或不应该做什么的细节(应用的需求)不清晰的情况下进行开发5 软件复杂性图形用户界面(GUI),客户/服务器结构,分布式应用,数据通信,超大型关系型数据库以及庞大的系统规模,使得软件及系统的复杂性呈指数增长,没有现代化开发经验的人
6、很难理解它。6 程序设计错误跟所有的人一样,程序员也会出错7 时间压力软件项目的日程表很难做到准确,很多时候需要预计和猜测。当最终期限迫近和关键时刻到来之际,错误也就跟着来了。8 自负 自负的人更喜欢说:“没问题”;“这件事很容易”;“几个小时我就能拿出来”,太多不切实际的“没问题”结果只能是引入错误。9 代码文档贫乏 贫乏或者差劲的文档使得代码维护和修改变的异常艰辛,其结果是带来许多错误。事实 上,在许多机构并不鼓励其程序员为代码编写文档,也不鼓励程序员将代码写得清晰和 容易理解,相反她们认为少写文档能够更快的进行编码,无法理解的代码更易于工作的 保密(“写的艰难必定读的痛苦”)10.软件开
7、发工具 可视化工具,类库,编译器,脚本工具,等等,她们常常会将自身的错误带到应用软件中。就像我们所知道的,没有良好的工程化作为基础,使用面向对象的技术只会使项目变得更复杂。003提高软件质量的方法1 软件工程化2 CMM 能力成熟度模型 Capability Maturity Model for Software3 软件测试004软件测试的目标与定义软件测试的目的决定了如何去组织测试,在项目的不同阶段,测试的目的也不相同。1 在UT(Unit Test)阶段,测试的目的是为了尽可能多地找出错误,那么UT阶段测试就应该直接针对软件比较复杂的部分或是以前出错比较多的位置。在此阶段,能够引用Gren
8、ford J. Myers在The Art of Software Testing一书中的观点: 软件测试是为了发现错误而执行程序的过程; 测试是为了证明程序有错,而不是证明程序无错误。 好的测试方案是极可能发现迄今为止尚未发现的错误的测试方案; 成功的测试是发现了至今为止尚未发现的错误的测试。 这种观点能够提醒人们测试要以查找错误为中心,而不是为了演示软件的正确功能。可是仅凭字面意思理解这一观点可能会产生误导,认为发现错误是软件测试的唯一目的,查找不出错误的测试就是没有价值的,事实并非如此。首先,测试并不但仅是为了要找出错误。经过分析错误产生的原因和错误的分布特征,能够帮助项目管理者发现当前
9、所采用的软件过程的缺陷,以便改进。同时,这种分析也能帮助我们设计出有针对性地检测方法,改进测试的有效性。其次,没有发现错误的测试也是有价值的,完整的测试是评定测试质量的一种方法。详细而严谨的可靠性增长模型能够证明这一点。2 SI测试阶段的目的是为了给最终用户提供具有一定可信度的质量评价,那么测试就应该直接针对在实际应用中会经常见到的商业假设。在这一阶段不但要验证UT测试的结果,检测出软件本身的缺陷,更重要的是要站在用户的角度找出我们在软件开发过程中的不合理的地方,最终的目的是让用户满意。对于软件产品的不同角色来说,她们的测试目的也是不同的。用户:经过测试来暴露错误开发者:经过测试来证明自己开发
10、的产品不存在错误测试人员:找出软件缺陷,尽可能早一些,并确保其得以修复测试从狭义上说,就是:凭借测试用例Test Case运行程序发现错误的过程。005软件测试中的原则1 完全测试程序是不可能的在软件测试的过程中,想要进行完全测试,找出所有软件缺陷,并使软件臻于完美,实际上这是不可能的,即使最简单的程序也不行,主要有如下4个原因:l 输入量太大l 输出结果太多l 软件实现途径太多l 软件说明书没有客观标准。从不同的角度看,软件缺陷的标准不同。2 软件测试是有风险的行为正因为完全测试程序是不可能的,那么在测试的过程中必定会对某些你认为是重复的或者没必要的或者为了节省时间,而将其提出,如果决定不去
11、测试所有的情况,这就是选择了风险。既然不可能做完全测试,那么这种风险就是无法避免的了。软件测试员要学会的一个主要原则就是如何把无边无际的可能减少到能够控制的范围,以及如何针对风险制定做出明智抉择,去粗存精。3 测试无法显示潜伏的软件缺陷软件测试工作与防疫员的工作极为相似,能够报告已发现的软件缺陷,却无法报告潜伏的软件缺陷。你能够进行测试,查找并报告软件缺陷,可是不能保证软件缺陷全部找到。唯一的方法是继续测试,可能还会找到一些。4 找到的软件缺陷越多,就说明软件缺陷越多一般,软件测试员在没有找到软件缺陷之前拼命地琢磨。找到一个之后,就会接二连三地找到更多。其中的原因是:l 程序员怠倦。和我们大家
12、一样,程序员也要休假。编写一天代码还不错,第二天就会烦躁不安了。一个软件缺陷很可能是泄露附近有更多软件缺陷的信号。l 程序员往往犯同样的错误。每个人都有偏好。一个程序员总是重复犯下自己容易犯的错误。l 某些软件缺陷实际上是大灾难的征兆。软件的设计或者体系常常会出现基础问题。软件测试员可能会发现某些软件缺陷开始似乎毫无关联的,可是最后才知道它们是由一个极其严重的原因造成的。可是,如果无论如何也找不出软件缺陷,那么也有可能是软件经过精心编制,确实存在极少软件缺陷5 重复使用相同的测试会使软件具有抵抗力在测试过程中你会发现经过几个回合的测试之后,该发现的软件缺陷都被发现了,在测试下去也不会有新的发现
13、了。这时,软件测试员,需要采用其它新的方法,对程序的不同部分进行测试,以找出更多软件缺陷。6 并非所有的软件缺陷都能修复这要求软件测试员能过进行良好的判断,搞清楚在什么情况下不能追求完美。项目小组需要对每一个软件缺陷进行取舍,根据风险决定哪些需要修复,哪些不要。不需要修复软件缺陷的主要原因有:l 没有足够的时间。在任何一个项目中,一般是软件功能较多,而代码编写人员和软件测试人员较少,而且在项目进度中没有为编制和测试留出足够的空间。常常会在不可更改的交付期限内,必须按时完成软件。l 不算真正的软件缺陷。在某些特殊场合,错误理解、测试错误或者说明书变更会把软件缺陷当作附加功能来对待。l 修复的风险
14、太大。修复一个软件缺陷可能导致其它软件缺陷出现;在紧迫的产品发布进度压力之外,修改软件将冒很大的风险。不去理睬未知软件缺陷,以避免出现未知新缺陷的做法可能是安全之道。l 不值得修复。不常出现的软件缺陷和在不常见功能中出现的软件缺陷能够放过;能够躲过和用户有办法预防或避免的软件缺陷一般不用修复。这些都要归结为商业风险决策。7 要尽早、不断地进行测试测试是无穷近的,而测试的时间又是有限的,因此我们要尽早地开始测试,尽快地找出软件缺陷,以便降低修复成本。在几个回合的测试以后,没有再检测出BUG,不能说程序没有错误,只能说还没有找到错误,没有人能够找出程序中所有的错误,没有任何软件产品是完美无错的,我
15、们能做的只是不断地进行测试。8 测试用例能够帮助我们有效地进行测试“好的测试用例是极可能发现迄今为止尚未发现的错误的测试用例”,可见测试用例对在软件测试中占有很重要的地位,它能够弥补软件测试员在测试时的遗漏、偏差以及经验上的不足,给我们的测试提供依据。同时测试用例也是作为向用户提供的质量保证的重要依据之一。9 程序员应避免测试自己的程序“自负”是影响程序质量的原因之一,程序员测试的目的是证明程序的无错,基于这种心理,程序员是很难测试自己程序中的BUG的。另一方面,程序员在理解式样的时候难免会有偏差,如果测试自己的程序是很难找出这些偏差的。10. 正确和错误的测试 软件测试员测试的目的是要找出软
16、件潜在的错误和缺陷,这里的错误和缺陷不但指软件本身的错误,还要检测软件对错误的处理能力,因此我们在测试的时候既要准备正确的数据也要准备错误的数据,一般来说测试错误的CASE比正确的CASE要多很多。11. 群集现象 在测试的过程中,会发现某些画面BUG特别多,某些功能会出现BUG群集的现象,因此要重视这些群集现象,而且及时的采取对策。12. 杜绝随意性软件测试时一定要有测试依据的,测试人员不能按照自己的想法凭空想象来评判对错。软件测试员是客户的眼睛,是第一次看到软件的人,代表客户说话,应力求完美。但力求完美的同时,最好能全面地客观评价,做到合情合理。006如何成为一个好的软件测试员现在,大多数
17、公司把软件测试视为技术工程专业工作。她们意识到在项目组中培训软件测试员,并在开发过程中早期投入工作能够制造出质量更优的软件。下面是大多数软件测试员应具备的素质:l 沟通能力。一名理想的测试者必须能够同测试涉及到的所有人进行沟通,具有与技术(开发者)和非技术人员(客户,管理人员)的交流能力。既要能够和用户谈得来,又能同开发人员说得上话,不幸的是这两类人没有共同语言。和用户谈话的重点必须放在系统能够正确地处理什么和不能够处理什么上。而和开发者谈相同的信息时,就必须将这些活重新组织以另一种方式表示出来,测试小组的成员必须能够同等地同用户和开发者沟通。l 技术能力。就总体言,开发人员对那些不懂技术的人
18、持一种轻视的态度。一旦测试小组的某个成员作出了一个错误的断定,那么她们的可信度就会马上被传扬了出去。一个测试者必须既明白被测软件系统的概念又要会使用工程中的那些工具。要做到这一点需要有几年以上的编程经验,前期的开发经验能够帮助对软件开发过程有较深入的理解,从开发人员的角度正确的评价测试者,简化自动测试工具编程的学习曲线。l 自信心。开发者指责测试者出了错是常有的事,测试者必须对自己的观点有足够的自信心。如果容许别人对自己指东指西,就不能完成什么更多的事情了。因为开发和测试的立场不同,面对问题的时候测试人员要有自信坚持自己的观点,而不能轻信开发人员的说法。l 外交能力。当你告诉某人她出了错时,就
19、必须使用一些外交方法。机智老练和外交手法有助于维护与开发人员的协作关系,测试者在告诉开发者她的软件有错误时,也同样需要一定的外交手腕。如果采取的方法过于强硬,对测试者来说,在以后和开发部门的合作方面就相当于“赢了战争却输了战役”。l 幽默感。在遇到狡辩的情况下,一个幽默的批评将是很有帮助的。l 很强的记忆力。一个理想的测试者应该有能力将以前曾经遇到过的类似的错误从记忆深处挖掘出来,这一能力在测试过程中的价值是无法衡量的。因为许多新出现的问题和我们已经发现的问题相差无几。l 耐心。一些质量保证工作需要难以置信的耐心。有时你需要花费惊人的时间去分离、识别和分派一个错误。这个工作是那些坐不住的人无法
20、完成的。l 怀疑精神。能够预料,开发者会尽她们最大的努力将所有的错误解释过去。测式者必须听每个人的说明,但她必须保持怀疑直到她自己看过以后。l 自我督促。干测试工作很容易使你变得懒散。只有那些具有自我督促能力的人才能够使自己每天正常地工作。l 洞察力。一个好的测试工程师具有“测试是为了破坏”的观点,捕获用户观点的能力,强烈的质量追求,对细节的关注能力。应用的高风险区的判断能力以便将有限的测试针对重点环节。l 不懈努力。软件测试员总是不停尝试。她们可能会碰到瞬间即逝或者难以重建的软件缺陷。她们不会心存侥幸,而是尽一切可能去寻找。l 创造性。测试显而易见的事实,那不是软件测试员。她们的工作是相处富
21、有创意甚至超常的手段来寻找软件缺陷。l 追求完美。她们力求完美,可是知道某些无法企及时,不去苛求,而是尽力接近目标。l 判断准确。软件测试员要决定测试内容、测试时间,以及看到的问题是否算作真正的缺陷。l 说服力。软件测试员找出的软件缺陷有是被人认为不重要,不用修复。测试员要善于表示观点,表明软件缺陷为何必须修复,并经过实际演示力陈观点。 软件测试员的一个基本素质是打破砂锅问到底。她们喜欢找出那些深藏不露的系统冲突。她们乐于处理最复杂的问题。她们外表上热衷于来回奔忙,追求尽善尽美。软件测试员的任务是检查和批评同事的工作,挑毛病,公布发现的问题。这样难免与项目组中的其它人员会产生摩擦,下面是保持小
22、组成员和睦的建议:l 早点找出软件缺陷。这是软件测试员的当然任务,可是不容易做到。在三个月之前而不是在产品即将发布前夕找出严重的软件缺陷,会产生更小的影响,更容易让人接受。l 控制情绪。诚然,软件测试员真心喜爱自己的工作,当发现严重的软件缺陷时乐不自胜。可是,如果兴冲冲地闯进程序员同事的房间告诉她程序中存在不可救药的软件缺陷,她不会高兴的。不要总是报告坏消息。假如意外发现某些代码没有软件缺陷,就大声宣扬。花一些时间找程序员聊聊天。如果总是报告坏消息,别人就会惟恐避之不及。007软件测试的阶段划分1 单体测试单元测试的对象是软件设计的最小单位模块。单元测试的依据是详细设描述,单元测试应对模块内所
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 软件 测试 作业 指导书
1、咨信平台为文档C2C交易模式,即用户上传的文档直接被用户下载,收益归上传人(含作者)所有;本站仅是提供信息存储空间和展示预览,仅对用户上传内容的表现方式做保护处理,对上载内容不做任何修改或编辑。所展示的作品文档包括内容和图片全部来源于网络用户和作者上传投稿,我们不确定上传用户享有完全著作权,根据《信息网络传播权保护条例》,如果侵犯了您的版权、权益或隐私,请联系我们,核实后会尽快下架及时删除,并可随时和客服了解处理情况,尊重保护知识产权我们共同努力。
2、文档的总页数、文档格式和文档大小以系统显示为准(内容中显示的页数不一定正确),网站客服只以系统显示的页数、文件格式、文档大小作为仲裁依据,个别因单元格分列造成显示页码不一将协商解决,平台无法对文档的真实性、完整性、权威性、准确性、专业性及其观点立场做任何保证或承诺,下载前须认真查看,确认无误后再购买,务必慎重购买;若有违法违纪将进行移交司法处理,若涉侵权平台将进行基本处罚并下架。
3、本站所有内容均由用户上传,付费前请自行鉴别,如您付费,意味着您已接受本站规则且自行承担风险,本站不进行额外附加服务,虚拟产品一经售出概不退款(未进行购买下载可退充值款),文档一经付费(服务费)、不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
4、如你看到网页展示的文档有www.zixin.com.cn水印,是因预览和防盗链等技术需要对页面进行转换压缩成图而已,我们并不对上传的文档进行任何编辑或修改,文档下载后都不会有水印标识(原文档上传前个别存留的除外),下载后原文更清晰;试题试卷类文档,如果标题没有明确说明有答案则都视为没有答案,请知晓;PPT和DOC文档可被视为“模板”,允许上传人保留章节、目录结构的情况下删减部份的内容;PDF文档不管是原文档转换或图片扫描而得,本站不作要求视为允许,下载前自行私信或留言给上传者【人****来】。
5、本文档所展示的图片、画像、字体、音乐的版权可能需版权方额外授权,请谨慎使用;网站提供的党政主题相关内容(国旗、国徽、党徽--等)目的在于配合国家政策宣传,仅限个人学习分享使用,禁止用于任何广告和商用目的。
6、文档遇到问题,请及时私信或留言给本站上传会员【人****来】,需本站解决可联系【 微信客服】、【 QQ客服】,若有其他问题请点击或扫码反馈【 服务填表】;文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“【 版权申诉】”(推荐),意见反馈和侵权处理邮箱:1219186828@qq.com;也可以拔打客服电话:4008-655-100;投诉/维权电话:4009-655-100。