软件测试工程师的疑惑_第1页
软件测试工程师的疑惑_第2页
软件测试工程师的疑惑_第3页
软件测试工程师的疑惑_第4页
软件测试工程师的疑惑_第5页
已阅读5页,还剩4页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

/软件测试常见问题1.基础学问部分1、如何描述一个缺陷?看到这个问题,或许有些读者会觉得可笑:哪个测试人员不会描述缺陷?但是现实中却真的存在许多测试人员提交的缺陷须要向开发人员进行说明或者演示后,才能让人明白他真刚要表达的意思。事实上,是否能够清楚地描述软件缺陷,确定体现着一个测试人员的实力水平凹凸。除了极个别的不能重现的缺陷外,一个软件缺陷至少应当描述清楚三方面的内容:缺陷概述、详细内容、重现步骤。缺陷概述——用一到两句话详细地描述缺陷的症状,使管理人员一下子就能看明白或许是什么问题。详细内容——详细地描述缺陷的症状,可以发表自己对该缺陷的一些看法。详细内容主要供程序员进行分析。重现步骤——详细描述如何在系统中重现缺陷,这是特殊重要的一项内容,假如重现步骤描述的特殊清楚,将大大加快开发人员修改缺陷的速度。通常状况下,许多缺陷管理软件把“详细内容”和“重现步骤”进行了合并,即只有一个文本输入框供测试人员录入信息,这就导致许多测试人员疏忽了去描述“重现步骤”。此外其他诸如测试版本、测试环境、发觉日期等帮助信息也应当细致录入。2、缺陷是谁“生产”的?这是一个“老生常谈”的问题。尤其在追究一些质量问题责任的时候。经常听测试人员埋怨:“这些模块简直是垃圾!不值得测试!奢侈我的时间!”,开发人员则埋怨:“重要的问题发觉不了,却成天盯着那些无关痛痒的小问题,还不如自己去测试!”。不符合用户要求的都可以称之为缺陷,因此缺陷的来源主要有两类:一类是没有正确理解用户需求,由系统需求或者分析人员设计出来的缺陷,这类缺陷主要由设计人员“生产”;另外一类是程序开发人员没有依据设计要求进行开发或者编写的代码存在错误而引起的缺陷,这类缺陷由程序开发人员“生产”。对于那些开发流程不规范的组织,通常开发人员会包办测试前的大部分工作。在这种环境下,几乎没有什么设计文档,软件开发主要依据程序设计人员的想像来进行,这个时候的缺陷则主要由开发人员“生产”。测试人员不是缺陷的“生产”者,因为测试人员没有写过一行代码,这是否意味着测试人员可以在一旁“幸灾乐祸呢”?事实恰好相反,测试人员和缺陷关系更加密切,他们是“缺陷的缺陷”的制造者。所谓“缺陷的缺陷”,主要指测试人员提交的“不是缺陷”的缺陷,即测试人员没有正确理解需求,从而提交了根本“不是缺陷”的缺陷,这种缺陷也是测试人员经常受到指责的重要缘由。关于上面的埋怨,测试和开发双方都须要摆正心态:因为实际双方都在不停的“生产”着缺陷,只是创建的方式不同罢了。3、缺陷产生的缘由是什么?在上个问题中,已经介绍了设计人员、开发人员、测试人员都会“生产”软件缺陷。在实际工作中,缺陷产生的方式更是层出不穷,缘由也是多种多样。例如开发人员去接杯水,碰巧和另外一个接水的同事聊了几句,结果回到工位时遗忘了要在某个推断语句追加此前已经想好的一个推断条件,这无疑会产生一个缺陷。因此很难一下子把缺陷产生的缘由全部陈设出来,下面只是一些引起缺陷的典型缘由:(1)开发人员不太了解需求,不清楚应当“做什么”和“不做什么”,经常做不合需求的事情,因此产生了缺陷;(2)软件系统越来越困难,开发人员不太可能精通全部的技术。假如不能正确地驾驭新的技术或者学问,可能会产生缺陷;(3)技术文档普遍编写的很差,甚至文档本身就有缺陷,导致运用者产生更多的缺陷;(4)软件需求、设计报告、程序经常发生变更,每次变更都可能产生新的缺陷;(5)任何人在编程时都可能犯错误,导致程序中有缺陷;(6)技术人员常处于进度的压力之下,不能静心思索也很简洁产生缺陷,尤其是在Deadline接近之际,常见的加班是开发人员疲于应付进度;(7)许多开发人员过于自信,宠爱说“没问题”,因此对于一些代码不进行细致的调试,这也是一些缺陷产生的缘由;(8)常见的拷贝代码也会把缺陷随之复制到新的程序中,尤其是复制其它团队成员的代码更简洁使一些缺陷隐藏在程序中。4、软件的质量应当由什么人来负责?对于一些开发管理混乱或者测试刚刚起步的组织,产品质量一发生问题,习惯上会归咎于测试小组,认为测试人员没有测试好产品,所以才产生了那么多的缺陷。对于开发管理规范一些或者测试体系已经建立确定时间的组织,假如客户投诉产品质量问题,则往往开发人员和测试人员会一起接受惩处。这种处理方式多少会让测试人员心理稍稍平衡一些。追根溯源,软件发生质量问题实际是项目管理不规范引起的。因此,假如要追究责任的话,软件质量问题的责任应当由整个团队来担当。只有提高整个团队的开发水平,才能提高质量。此外,也应当相识到软件发觉问题是正常的现象,很少有软件实现了零缺陷。做为公司领导者,应当详细问题详细分析,不要老是考虑如何惩处自己的成员。5、测试能保证质量吗?在软件质量方面,目前多数IT企业主要实行三种措施:技术评审、过程检查、软件测试。技术评审:技术评审最初是由IBM公司为了提高软件质量和提高程序员工作效率而接受的,主要指对项目支配、软件需求、系统设计等文档进行有效评审的过程。技术评审可以由专家团队组成,也可以由组织内部人员组成,它可以尽量避开设计人员在某些方面发生“闭门造车”的情形。通过技术评审,可以尽早地发觉工作成果中的缺陷,并帮助开发人员刚好消退缺陷,从而有效地提高产品的质量。过程检查:属于质量工程师(QA)的工作范畴,主要检查软件项目的“工作过程和工作成果”是否符合已经制定的相关规范。在项目执行过程中,质量保证人员要不断的依据项目支配对项目进行有效的监督和检查。通过过程检查,可以找出明显不符合规范的工作过程或者工作成果,刚好订正开发中的错误。因此,软件测试只是保证质量的最常用手段,仅仅通过测试是不能够保证质量的,还要辅以技术评审、过程检查等手段。6、测试人员是否须要开发技能? 在许多测试网站的论坛上,这个问题都是津津乐道的热门话题。而究其根源,主要是因为许多测试人员做不了开发才来做测试,于是其中的许多人便怀着一些“胆怯 ”心理,和同行反复探讨这个问题,期望其他人能够确定“即使不会开发也能做好测试”的观点,以便在心理上得到一些劝慰。是否须要开发技能和测试人员从事的测试工作种类有极大关系,信任许多人都听过微软曾经聘用一名家庭主妇来测试Windows操作系统的故事。事实上,假如从事单元测试、集成测试等较接近程序代码的工作,无疑须要开发技能,这类工作对测试人员开发技能的要求甚至会超过程序员;而从事基本的界面测试、用户功能测试,不会开发不会有大的影响。但是,原则上还是建议测试人员最好具备确定的开发实力,而且是开发实力越强越好,开发技能对测试工作可以说是“百利而无一害”,例如可以更简洁避开报告重复的缺陷、对缺陷缘由进行更精确的定位等等。同时,由于国内多数公司对测试人员没有分类,要想得到更多的发展机会,也应当学会开发,便于从事各种类型的测试工作,除非只从事那些远离代码的测试工作。此外,驾驭一门开发语言后,进行测试的时候可以站在程序开发的角度进行思索,而且知道程序如何编写,就更简洁发觉问题。7、测试的目的是什么?测试的目的是为了发觉尽可能多的缺陷,这个观念很简洁让人接受,但是却很难落实到实际工作中,因为测试的目的经常被定位为“证明软件没有问题”。软件质量是否优良在投产后才能有所体现。正确理解测试的目的特殊重要。假如认为测试的目的是为了说明程序中没有缺陷,那么测试人员就会向这个目标靠拢,因而下意识地设计许多不易暴露错误的测试示例,这些测试用例恰恰证明软件实现了预期功能,这样的测试是不真实的。成功的测试在于发觉了迄今尚未发觉的缺陷,测试人员的职责是设计这样的测试用例——它能有效地揭示潜藏在软件里的缺陷。8、一个软件产品测试结束时没有发觉任何新的缺陷,这样的软件质量确定好吗?测试只能证明缺陷存在,不能证明缺陷不存在。而彻底的、全面的测试又难以成为现实,现实中要考虑时间、费用等限制,不允许无休止地测试。通常的测试结束,只是满足确定条件下的测试结束,最终的“测试”还是交给了用户。因此,即使测试结束了,质量也不确定好。例如测试小组在时间紧迫的状况下,只测试了核心模块,这样的软件系统质量一般不会好。9、测试中的80-20原则是什么?测试中的80-20原则是说一般状况下,在分析、设计、实现阶段的复审和测试工作能够发觉和避开80%的Bug,而系统测试又能找出其余Bug中的80%,最终的5%的Bug可能只有在用户的大范围、长时间运用后才会暴露出来。因为测试只能够保证尽可能多地发觉错误,无法保证能够发觉全部的错误。还有就是一般状况下80%的缺陷聚集在20%的关键核心业务模块中。10、测试到Zero-bug是测试工作的目标和原则吗?通常对于相对困难的产品或系统来说,Zero-bug是一种志向,Good-enough是我们的原则。Good-enough原则就是一种权衡投入/产出比的原则:不充分的测试是不负责任的;过分的测试是一种资源的奢侈,同样也是一种不负责任的表现。执行测试工作的关键在于:如何界定什么样的测试是不充分的,什么样的测试是过分的。解决这一问题的通常方法是制定最低测试通过标准和测试内容,然后详细问题详细分析。11、通常测试工作要达到什么目标?(1)确保产品完成了它所承诺或公布的功能。这一目标就是软件要符合需求,开发出的软件应当达到全部功能都有明确的书面说明在某种意义上和ISO9001是同一种思想,测试的首要目的就是保证全部预定功能是存在并且经过规范的测试。当然书面文档的不健全甚至不正确会导致测试效率低下、测试目标不明确和测试范围不充分,进而导致最终测试的作用不能充分发挥、测试效果不志向。因此详细问题确定要详细分析,一个好的测试负责人尽量来弥补这些文档缺陷。(2)确保产品满足性能和效率的要求。现在的用户对软件的性能方面的要求越来越高,运用起来系统运行效率低(性能低)、或用户界面不友好、用户操作不便利(效率低)的产品市场空间确定会越来越小。因此通过测试改善性能也是测试工作一个目标。事实上用户最关切的不是软件的技术有多先进、功能有多强大,而是能从这些技术、这些功能中得到多少好处。也就是说,用户关切的是他能从中取出多少,而不是你已经放进去多少。(3)确保产品是健壮的、适应用户环境的。健壮性即稳定性,是产品质量的基本要求,尤其对于一个用于事务关键或时间关键的工作环境中的应用系统。软件只有稳定的运行,才会不致于中断用户的工作,因此通过健壮性测试是软件测试工作的又一个目标。

2.测试管理部分1、测试负责人要进行严格的测试进度跟踪吗?许多时候,由于人力资源的不足,测试项目负责人都是在执行测试,这样就使整个项目缺乏限制,一些问题(例如:有些成员的缺陷质量不够合格;开发人员修改不刚好,系统某些功能发生严峻问题导致部分功能无法测试。)得不到解决,耽搁了进度。所以测试负责任必需全程监控项目,尽可能多的驾驭信息。通常,测试负责人须要完成下面这些内容的管理工作:测试用例执行状况;每个测试员提交的缺陷状况;测试中是否发生突发问题。2、测试也有版本限制吗?这里的版本主要是指测试对象的版本限制,也就是指对开发部提交的产品进行版本限制。在开发小组版本管理不规范的状况下,测试小组进行版本限制特殊重要,要保证测试对象是可以限制的。建议开发和测试双方进行明确的约定,可以各自指定特地的测试版本负责人,制定提交原则,对提交状况进行详细的记录,这样基本避开了版本失控导致的测试失误或无效。3、如何处理测试人员的流淌问题?人员流淌不仅仅是测试部门,这是IT行业的普遍现象。从管理者角度,主管须要多多和团队内成员进行沟通,建立一个融洽的团队环境,刚好驾驭状况,可以早些进行相应的调整。但是只有企业建立好的用人制度,给员工提高广袤的发展空间和好的培训学习机会,才能从根本上解决这一问题。加强项目管理,强化文档管理并保证文档的有效性,可以大大削减由于人员流失带来的损失。同时,测试部门要建立培训机制,使新到员工接受干脆或者间接的培训,快速适应工作。4、为什么开发人员经常埋怨测试工程师提交的缺陷质量太差?我们经常听开发人员说:“这不是缺陷!”,“这个缺陷没有,因为我的系统上运行正常!”。测试工程师本身就是做质量工作的,提交的成果本身就应当质量高些,为什么还会有这种现象?提交的缺陷引起争议是一种正常的现象,例如测试人员描述不清楚就会引起争议。削减甚至避开这种现象的方法是交叉测试,交叉测试是提高测试质量的一个有效手段,当然交叉测试会增加确定的测试成本投入。在测试任务完成后,测试工程师之间相互验证彼此提交的缺陷,就会避开了缺陷描述不清、因运行环境而产生的缺陷等一系列问题,从而大大降低了回来测试以及沟通的成本,因而这种投入也是值得的,实际开发人员在单元测试阶段也会进行交叉测试,来提高开发质量。另外,测试人员确定要依据规范描述测试中发觉的缺陷,一个缺陷至少描述清楚概要描述、详细描述、重现步骤三方面的内容。5、“让那些新手来做测试,反正他们也不会什么”正确吗?在实际项目开发中,我们经常看到有些单位忽视测试团队存在的意义,当要实施测试时,往往临时找几个程序员充当测试人员。也有些单位尽管相识到了组建测试团队的重要性,但在详细落实的时候往往支配一些毫无开发阅历的行业新手去做测试工作,这经常导致测试效率低下,测试人员对测试工作索然无味。依据笔者的阅历,测试团队应首先聘请一名资深的测试领域专家,他应具有极为丰富的同类项目软件测试阅历,对软件开发过程中常见的缺陷或错误了然于胸;此外,他还具有较好的亲和力和人格魅力。其次,项目测试团队还具有许多具备一技之长的成员,如对某些自动化测试工具运用娴熟或能轻而易举地编写自动化测试脚本等。另外,测试团队还应聘请一些兼职成员,如验证测试实施过程中,同行评审是最常运用的一种形式,这些同行专家就属于兼职测试团队成员的范畴。至于测试团队里里的测试新手,这部分人可以支配去从事交付验证或黑盒测试之类的工作。6、测试同化现象是什么?同化现象是指随着时间的推移,开发人员会慢慢影响测试人员的思维和对缺陷的推断实力,尤其是针对同一产品,同一组开发人员和同一组测试人员共同协作了很长时间,许多原来是缺陷的问题,由于测试人员对软件“习惯成自然”的运用,会不被当成缺陷,尤其是在开发人员的说明和劝服下。同化现象发生可能意味着“恶性循环”的起先:测试人员会帮着开发人员说明一个个缺陷的合理性,一轮有一轮的测试都不会发觉问题。聘请新的人员,不同的测试项目组轮换去测试不同的产品,就可以避开。同时建议产品可以发布测试版,更多的人对其进行测试,就可以发觉更多的问题。7、测试工程师如何避开定位效应?社会心理学家曾作过一个试验:在召集会议时先让人们自由选择位子,之后到室外休息片刻再进入室内入座,如此五至六次,发觉大多数人都选择他们第一次坐过的位子。这种现象称为定位效应,说明人们习惯上凡是自己认定的,人们大都不想轻易变更它。定位效应在开发人员和测试人员身上都有体现。例如开发工程师针对某一自己写的功能,经常进行代码移植,这种复制的“功能”,由于上一次经过调试,在新的地方往往不会细致调试,这些代码往往会带来共享变量冲突等许多种类型的缺陷。定位效应体现在测试人员身上就是测试过的功能不再进行细致测试:在回来测试时,之前由于进行过细致的测试,往往会认为某些功能是牢靠,只要验证一些以前发觉的缺陷是否修改完成就可以了。这种现象在反复多次回来时表现的更加突出,因为回来测试中许多功能都会进行多次反复测试。众所周知,开发人员在修改缺陷时往往会引入新的缺陷,测试人员的疏于防范就会把这些缺陷带到用户这里。解决这种问题的方案一般有两个:(1)

完整的执行测试用例:这种方法投入较大,但是在开发产品时最好在最终一次回来测试时测试的执行一次全部的测试用例。(2)

交叉测试:测试人员交叉测试,就可以很大程度的避开定位效应。测试工程师在回来测试时相互交换任务,反复测试某一功能的机会大大削减,从而也就不会“主观的”人员某些功能没有缺陷。通常上面的两个方法都是结合运用的,既要进行交叉测试,又要全面执行测试用例,测试覆盖面要尽可能的广泛。8、测试人员突然辞职怎么办?目前IT行业人员流淌较大已经成为一种不争的事实,员工的辞职大多数都会给组织带来确定的影响,而这种影响基本是不行能避开的。在测试领域,员工突然辞职也会带来很大的负面影响,尤其测试队伍规模较小时。面对这种状况,我们所能做的,就是如何最大限度的降低这种影响。依据作者的阅历,主要有两种方法:第一种是在测试人员内部建立一个良好的学习环境,大家相互学习,这样某些特有技术不会被某一个人所驾驭,而相互学习和提高自身,也是大多数成员情愿做的;其次种就是在组织中进行学问管理,把技术作为学问沉淀下来,这样新的员工在接手工作时简洁上手,通过学习快速适应环境。此外,日常还要留意工作规范化,例如形成尽可能多的文档,都可以降低员工离职带来的损失。9、测试人员工作发生问题测试经理应当如何做?测试人员工作发生问题是测试经理经常要面对的问题,作为测试部门的领导,首先要做的是指出测试人员所犯的错误,使其尽快改正错误。唯一不能做的就是盯着下属的错误不放。总盯着下属的失误,是一个领导者的最大失误。英国行为学家波特说:当遭受许多指责时,下级往往只记住开头的一些,其余就不听了,因为他们忙于思索论据来反对开头的指责。身为测试经理要依据测试人员的心理来进行指导,最大限度的调动每个人员的主动性来参加工作。10、不深化到详细测试工作时,测试经理如何考核员工?这种现象在测试规模较大的组织中很常见。测试经理应当尽可能的支配每周和每个成员在不被打扰的环境下进行谈话,这样可以尽早发觉和解决许多问题。做为一个测试经理,主要工作之一就是定期的评定组织做了些什么并且是怎样做的。同时还要为员工做一个报告——关于充分了解测试人员正在做什么和怎样做的报告,以此来给测试人员做做工作成果考核。这份报告要了解到每个人的动态。测试经理和每个员工重点是谈谈目前的工作,例如大家在工作中的问题或看法;是否须要帮助等。许多管理者经常埋怨没有时间在一周会见每一个员工来谈他们的工作。但是依据作者的阅历,假如不能支配时间和员工进行每周的谈话,员工会来打扰测试经理的工作,因为员工许多问题还要要来找测试经理协商。同时对待员工要用他们能接受的方式,而不是我们自己可以接受的方式。“己所不予,勿施于人”,这条黄金法则可能会对许多生活中的纯粹的社交因素有效,但是并不是总对工作有用。有效率的管理者知道应当慢慢了解每一个员工须要怎样的对待方式。总之,只有尽可能多的和员工接触,才能更精确的进行考核。11、测试经理如何面对加班问题?大多数状况下,作者是不主见加班的。当员工每周工作超过40个小时的时候,他们起先在工作的时候关切自己的事。他们花钱,会给很久没有联系的人打电话,因为员工们始终都在工作。员工不能在太乏累的状态下完成工作,这是因为他们在工作时不能关切自己,这种状况下通常效率很低。测试管理工作的重要任务之一就是要创建一个环境,让员工在工作时间内完成工作,同时还要激励他们每周不要超过40小时,甚至可以基于他们在40个小时能够完成的工作量给他们酬劳。通常状况下这样做能够提升创建力,从而会慢慢提高效率。测试工作本身的一个突出特点就是不断重复枯燥、冗长的测试,假如在乏累状态下,很有可能精力不集中,略过一些重要的测试环节。而且有的时候测试须要编写测试驱动程序,这种状况更须要较好的状态来工作。12、测试管理者如何面对自己的错误?每个人都会犯错。我们可能会因为遗忘开会而使客户发怒,承认自己犯错是一件尴尬的事情,尤其是管理人员认为对自己负责的项目小组承认犯错可能会失去尊严。假如我们不是经常犯错,承认错误的时候其实能够赢得敬重。例如我们遗忘一次会议,然后为此向同事或者客户致歉,其他的人会理解我们的。不管做了什么,不要否认或有意忽视自己的失误。有意忽视不会让错误消逝,这只会让错误成长为怪物。13、为什么支配定期的培训?测试工作和开发工作一样,不但要面对日新月异的新技术,还要学习相关系统的领域学问。只有在不断的学习中,才能做好工作,跟上行业的发展。假如测试管理者没有基于不断的变更而培训员工,就会给组织带来确定的损失。日常培训可以是关于特定项目或者是技术,通常接受下面几种方法:(1)测试部门内自由沟通方式的培训。这种培训的沟通比较随意,可以在周五的例会上进行沟通,也可以大家一起坐在茶馆里进行沟通。方法可以接受“头脑风暴法”,让每个组员探讨一个特定的领域,这种沟通方法特殊对同时要做许多不同项目的小组比较有好处。当每个人做不同的项目,这会有助于每个人了解你小组全部的工程。(2)跨部门的相互学习。测试工作须要许多领域以及技术学问,这些学问单靠自学是远远不够的。和其它部门的同事进行沟通是一个相当好的方法,大家在工作中可以在技术等各个方面相互得到提高。(3)外部培训。外部培训尽管投入较高,但也是值得的。这些专家一般在自己的领域特殊精通,可以快速提高整个测试团队的水平。也可以通过测试小组介绍一些挚友来进行培训,这种方式可以降低成本。培训是构造学习型组织的基本条件,也是提高员工水平的重要方法。经常的定期培训,可以增加组织凝合力,使员工更加情愿长期留在组织中发展。做为测试负责人,定期的进行培训是特殊必要的。14、时间上不允许进行全部测试,测试负责人应当如何做?这个问题或许特殊可笑,可是现实中我们的测试经理们却不得不面对这个问题。这里的全部测试不是指对软件进行遍历测试,而是指测试负责人制定的测试支配包含的全部测试内容。通常,不管是开发产品还是做详细的项目,都会发生耽搁进度的状况。一旦整体进度不能向后延迟,项目相关人员习惯上的做法就是缩减测试时间。尤其在功能还没有开发完成的状况下,这种现象更为突出。担负着质量重任的测试经理,如何来解决这个问题呢?比较好的做法是依据下面的步骤逐步来完成和改进工作:(1)依据测试任务的轻重缓急,尽最大努力完成测试任务。在时间不足的状况下,我们应当对测试任务依据优先级来划分,重要紧急的任务先完成。这个时候的测试任务是一种帮助性工作,其目的就是尽最大努力来提高质量。因此,面对这种状况,测试负责人要做的就是带领测试小组充分利用全部资源来保证质量。(2)在实际工作中和开发人员共同协作,逐步改进工作。只有整个团队的软件开发实力提高了,才能从根源上解决问题。因此,测试负责人要带领团队和开发小组共同找寻适合自己的开发模式,从而使项目规划的更加合理,进而依据预定支配来开展测试工作。总之,在任何状况下,测试负责人都不应当埋怨。只有主动的面对问题,才能更好的解决问题。15、公司不重视测试,测试负责人如何开展测试工作?目前国内的软件公司不重视测试照旧是一种普遍现象。尽管许多公司在意识上已经起先重视测试,但是在详细工作中,往往由于追逐进度、节约资源等方面缘由而忽视测试工作。在这种状况下,测试负责人仍要对软件质量负主要责任。在这种环境下,测试负责人应当如何开展工作呢?首先,要主动去协作开发人员完成工作。尤其是不能埋怨环境,在任何状况下埋怨是不能解决问题的,只能加重冲突的激化。在此基础上,慢慢显出测试工作的重要性,然后再逐步健全测试体系。其次,用实际行动来证明测试工作的重要性。只有测试工作的业绩逐步表现出来,人们才会真正的留意到测试的重要性。因此,测试负责人从点滴起先做起,才能逐步做好测试工作。要想做好软件,把开发的软件产品形成商品,测试工作必需和开发一样重视。否则,质量不好的产品,很快会被市场淘汰的。现代的软件规模越来越大,测试工作也会越来越重要,因此测试负责人只要坚持做好工作,可发挥作用的空间会越来越大。最终要说的是,假如真的是在一个没有希望的团队里,测试负责人可以考虑辞职。辞职也是一个不错的选择,到新的环境去发挥自己的实力,要比长时间的怀着“郁闷”的心情去工作好的多。16、测试管理者须要是技术专家吗?测试管理者在测试项目中的主要任务是制定测试策略,管理测试支配的落实状况,并且还要为测试项目的进行创建良好的执行环境。同时还要调动员工的创建性,对员工的工作作出评估。这些工作不确定要求测试管理者达到专家的水平。但是在实际工作中,由于测试人员的短缺,测试管理者经常做为测试员来执行详细的测试任务。尤其在规模较小的测试团队,测试管理者的日常工作通常以详细的测试执行工作为主,这个时候更须要测试管理者有较好的背景学问。总体说来,技术方面的背景学问对测试管理者是特殊有益的。例如:支配工作任务、做进度预算,以及一些详细的执行工作,都须要确定的背景学问。当然,做为一个测试管理者,没有必要精通全部的技术,那也是办不到的。测试管理者做到正确的帮助员工最好地完成工作,并且供应最好的完成工作的环境就可以了。

3.测试流程部分1、测试人员要须要何时参加需求分析?原则上,测试人员对需求了解得越深化对测试工作越有利,所以最好一起先就应当参加需求分析工作。这样可以带来如下得好处:测试人员全程参和需求分析,对需求了解很深刻,削减了许多和开发人员的交互,节约了时间。测试人员参和前期开发探讨,干脆驾驭了不清楚的需求点;早期确定测试用例的编写思路,为测试打好了基础;可以获得一些测试数据,为测试用力设计供应帮助;可以发觉需求不合理的地方,降低了测试成本。测试人员主要的工作之一就是确认系统是否正的确现了需求。测试人员不参和前期的工作,就只能依靠最终形成的需求文档,甚至由开发人员来讲解需求,而这些缺求可能发生了“问题”,因为这个需求是已经经过分析的需求,许多的内容可能和用户的真刚要求发生了偏差。同时假如只看最终形成的需求文档,对需求也会有理解上的偏差。因此作为测试人员要尽可能的获得到“第一线”的需求资料,才能真正地了解用户的业务,从而更好的对系统进行测试。当然,假如测试人员不能参和需求环节,确定要通过其他途径保证需求的精确性,例如和开发人员进行集中探讨需求疑问的项目会议,并且确定要加强测试案例评审,甚至于是测试需求的评审。2、系统测试阶段低级缺陷较多怎么办?在系统测试阶段,假如仍有许多低级缺陷,说明测试对象是不合格的,没有达到测试标准。假如系统阶段发觉的简洁缺陷(也就是不应当有的缺陷)较多,最好停止测试,转由开发人员进行测试,发觉问题马上修改,因为这种由测试人员进行的成本较高,反复交互还会耽搁进度。建议建立预料试制度:系统测试前对核心模块进行抽查测试,假如问题较多(例如平均每个核心模块发觉10个以上缺陷),就可以停止本次测试,直到抽测后发觉问题较少才可以启动系统测试。3、缺陷流落到客户那里有什么后果?假如软件缺陷被遗忘并流落到客户那里,结果就是代价昂扬的电话或者现场支持费用,还可能须要修复、重新测试和发布新的产品,更糟糕的状况是产品要被召回甚至被客户起诉。这种成本付出特殊高,几乎是在内部修改缺陷的几何级数倍。质量之父PhilipCrosby把质量的费用分为整合费用和非整合费用两类,整合费用是指和一次性支配和执行测试相关的全部费用,用于保证软件依据预期方式进行。假如发觉缺陷,经过一系列的缺陷处理流程而解决缺陷,这种费用就是非整合费用。PhilipCrosby在自己的作品中详细论述了内部的整合费用和内部的非整合费用之和远远小于外部也就是客户引起的非整合费用。总之,软件缺陷确定要尽可能的在内部解决,这对节约成本、提高产品知名度都大有裨益。4、什么是冒烟测试?冒烟测试从操作上是一个随机的测试,操作对象通常是核心业务模块。测试员随意操作,要是发觉多数功能走不下去(或许20%),那么这个冒烟测试就算是结束了。冒烟测试一般不用参照测试用例。执行冒烟测试的目的是对要测试的产品进行一个或许的度量。假如冒烟测试不能通过,通常不会启动测试支配。因为软件缺陷较多的状况下,启动测试支配会奢侈更多的人力和物力。通俗的说,对“垃圾”产品执行测试实际是测试人员抢了程序设计人员的工作,这些缺陷应当在开发阶段歼灭,只有这样才可以真正的节约成本。5、在集成测试的时候,已经对一些子系统进行了功能测试、性能测试等等,那么在系统测试时能否跳过相同内容的测试?因为集成测试是在仿真环境中开展的,那不是真正的目标系统。再者,单元测试和集成测试通常由开发小组执行。依据测试心理学的分析,开发人员测试自己的工作成果虽然是必要的,但不能作为成果已经通过测试的依据。为了保证测试的客观性,应当由机构的独立测试小组来执行系统测试。6、什么是测试策略?测试策略描述测试工程的总体方法和目标。描述目前在进行哪一阶段的测试(单元测试、集成测试、系统测试)以及每个阶段内在进行的测试种类(功能测试、性能测试、覆盖测试等)。测试策略的制定主要包含三个方面的内容:(1)确定测试过程要运用的测试技术和工具;(2)制定测试启动、停止、完成标准;(3)进行风险分析和应对方案。例如测试和外部接口或者模拟物理损坏、平安性威逼。测试支配最关键的一步就是将软件分解成单元,依据需求编写测试支配。7、代码会审是如何进行的?在研发小组将所开发的程序阅历证后,提交测试组后,测试实施工作基本起先了。这个时候,测试人员要细致阅读有关资料,包括规格说明、设计文档、运用说明书及在设计过程中形成的测试大纲、测试内容及测试的通过准则,全面熟悉系统,编写测试支配,设计测试用例,作好测试前的准备工作。为了保证测试的质量,我们一般测试过程分成几个阶段,即:代码审查、单元测试、集成测试和验收测试。代码会审是由一组人通过阅读、探讨和争议对程序进行静态分析的过程。会审小组由组长,2~3名程序设计和测试人员及程序员组成。会审小组在充分阅读待审程序文本、限制流程图及有关要求、规范等文件基础上,召开代码会审会,程序员逐句讲解程序的逻辑,并绽开热忱的探讨甚至争议,以揭示错误的关键所在。实践表明,程序员在讲解过程中能发觉许多自己原来没有发觉的错误,而探讨和争议则进一步促使了问题的暴露。例如,对某个局部性小问题修改方法的探讨,可能发觉和之有牵连的甚至能涉及到模块的功说明、模块间接口和系统总结构的大问题,导致对需求定义的重定义、重设计验证,大大改善了软件的质量。代码会审尽管须要确定的成本,但是在大型软件中,是必不行少的。8、回来测试中未解决的缺陷如何处理?软件的后期测试就是一个反复回来的工作,有些问题可能修改多次才能解决,尤其是那些在开发环境下不存在的问题,这些问题很简洁被程序员忽视,拖到最终才解决。因此大部分回来测试就是和开发人员反复协作解决那些上次测试中没有解决的缺陷。这里重点探讨的是最终一次回来测试后,照旧发觉有些缺陷没有解决时测试经理应当如何做。在管理不规范的组织中,由于进度或者其它方面的压力,开发工作已经停止,通常会将这些问题束之高阁。正确的做法时把这些没有解决的问题形成一个未解决缺陷报告,然后召开项目会议进行探讨,对不同的问题实行不同的处理方式:(1)

严峻性的问题:有些问题较难解决,往往会被拖到最终,假如这类缺陷导致软件功能发生障碍,则必需解决,这也是质量限制的职责所在;(2)功能性的问题:可以考虑升级时解决;(3)一般性问题:不影响运用,可以不解决或者升级解决。这类项目会议通常须要技术总监或者更高级别的人来参加。最终,须要对最终探讨没有解决的缺陷列表进行签字并存档,形成一个基线。特殊要留意的某些缺陷是否修改不能由程序员或者测试人员来确定,这样有可能带来严峻的后果——导致缺陷失控,最终形成没有人对质量负责的局面。9、状态为已经修改的缺陷没有修改怎么办?首先要对这类缺陷进行分析:(1)

有些问题在开发环境下没有重现,而开发人员迫于进度压力,往往会把它标记为已经修改。这种条件下测试人员应当和开发人员进行干脆沟通;(2)

有些问题测试人员没有描述清楚,开发人员认为问题不存在也可能把问题标记为已经修改(正确的做法是标记问题为商讨或者不存在状态)。测试人员应当清楚的描述问题,削减这类问题的发生,尤其要描述

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论