软件测试员的经验之谈_第1页
软件测试员的经验之谈_第2页
软件测试员的经验之谈_第3页
软件测试员的经验之谈_第4页
软件测试员的经验之谈_第5页
已阅读5页,还剩4页未读 继续免费阅读

下载本文档

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

文档简介

1、软件测试员的经验之谈一、软件测试员的工作 1二、如何成为优秀的测试人员? 2三、常见软件测试的技巧 4四、测试中的常见问题 5一、软件测试员的工作软件测试员是指根据测试计划和测试方案进行软件测试;能够针对软件需求开发测试模型,制定测试方案,安排测试计划,并对测试项目进行管理的专业人员。为高层提供服务:即测试部门将产品的测试报告提供给高层,由高层作出有关决策。测试报告应包含高层希望了解的产品情况:错误发现率、错误改正率、问题收敛趋势,等等。 为项目经理提供服务:向项目经理提供的测试报告应满足项目经理关注的需求,这些需求包括:产品的功能有哪些未满足、性能方面有哪些问题、哪些问题已与程序员沟通,但未

2、达成一致意见,需要提交高层仲裁,等等。 为QA提供服务:测试人员参与质量管理活动应该是服务性质的,即他不是去主导质量管理活动,而是为质量管理活动提供服务支持。测试人员通过测试报告,利用事实和数据来反映产品目前的质量情况,为QA的工作提供依据。 为程序员提供服务:测试员要同程序员交朋友,向程序员及时反馈具体的程序问题,并与程序员共同探讨。一方面,测试员通常比程序员更了解业务领域,因此,他能从业务员的视角来检测产品的功能;另一方面,测试员通过测试用例能发现程序员不易想到的问题;再一方面,测试员从用户(操作员)的角度所进行的随机测试,也是检查产品的可用性。这些方面的测试情况,应及时反馈给程序员,以便

3、进行及时修改。同时,测试员也要从程序员角度考虑问题,并获取相关程序的文档资料,使得测试员编制的测试用例更切合测试的重点、难点以及关注点。必要时,测试员也应了解程序员所使用的开发语言,这对于进行程序的白盒测试尤为重要。为市场推广人员提供服务:产品最终是要投放市场的,在产品的投产前,市场推广人员必须了解产品的优缺点和与同类产品对比的特色,从而有利于组织产品的广告宣传,以及应对媒体的挑剔与非难。总之,在市场推介活动中,市场推广人员应充分了解产品的相关信息,这些信息的主要来源就是测试报告。同样是测试人员,做着可能相同的工作,作出的结果也可能大致相同。那么以什么作为你工作更加专业的区分呢?测试的工作用例

4、编写,测试执行,bug上报,以及功能点测试完成度控制。这些方面都可以体现我们的劳动价值。测试用例的编写当别人不愿意编写测试用例,甚至觉得编写用例是浪费时间时,倘若你体会到了用例编写在测试过程中带来的功能点覆盖的全面性。那么你就站在了比他人更高的高度。细到用例的每条,当别人只是简单的划分出这是某个测试点,而你已经清晰的知道这个测试点是使用什么方法划分出来的测试点-例如边界值,等价类,因果图。那么你的确要比那些简单罗列测试点的人技能上要更高一些。当别人还因为测试功能点未全面,而在赶工期忙碌时,倘若你能够很坦然的根据自己的测试用例通过率确定已测试功能的质量时,你就会知道你站在了更高的台阶上。这些都是

5、理论,测试用例要写的好,要覆盖面全,那是需要思考的,是绝对全心投入的思考。是一种创作,不是你拷贝策划案里的条目就能够理清的。而是通过把策划案中的功能点不断的划分,直至精确到某个输入和输出结果。这是一个急需要脑力劳动的过程,一方面要肯定策划案中的正确的内容,另外一方面要考虑这些正常的内容是否存在何种异常的操作,而任何一个异常的内容都是不允许没有输出结果的。测试的执行不是所有的用例都会精确到点击鼠标左右键。所以测试执行的速度反应着一个测试人员基本功的扎实程度。同样是一个功能我们会发现,熟悉系统的测试人员在执行测试过程中往往比不熟悉系统的测试人员快。但是不熟悉系统本身就是测试人员自身的素质问题。没有

6、任何借口,既然你是做这个的,那么允许你开始的懵懂,却不允许你一而再,再而三的愚蠢。想要比别人突出,那么好好熟悉你得系统,最好做到别人知道的你清楚,别人不知道的你知道。bug的上报其实就是把bug的出现方法和具体出现导致的问题说清楚的过程。语言要简洁,但是不能简洁到别人看不懂。要步骤分明,要在执行测试过程中不断尝试,直至把bug的重现过程缩短到最短。可能会浪费你很多时间,但是你要看到这个的另外一个好处。当别的测试员跟程序人员重现bug,总是找不到重点步骤时,你已经深刻理解到要获得程序人员的重视,bug的步骤越短,越是能够得到程序人员的赞许。这个赞许积蓄到一定时间就成了你自负的资本。测试结果的汇报

7、也很重要,清晰而明了的告诉程序人员或者测试主管,用例的执行情况,需要解决的问题-最好指出你问题在用例内的出处。这样有便于程序人员养成查看你用例的习惯。一般用例生成和程序实现是同步进行的,在这个过程中,如果程序人员发现你用例内有的测试点而自己没有实现,那么可以节省很多时间。当他多次出现你用例有的内容,他没有实现到时这种深刻的记忆将驱使他检查你的用例。测试时间点的把控根据测试用例中测试点的执行难易程序,以及测试用例中测试点的条数可以初步判定功能点的测试完成时间。最初这个是需要积累的,当用例达到某个数量,当用例难度与其它用例执行难度可进行比较时就很容易把控时间点。最好的时间把控不是预期3天而实际只测

8、试1天半,也不是预期3天实际测试了5天。最好的时间点应该控制在半个工作日内。测试点的时间把控对于测试人员来说也很重要。有时如果为了进度需要宁可多几个人一起来完成测试,也不可以因为时间点的问题导致版本发布延迟。二、如何成为优秀的测试人员?什么是优秀?优秀是一种习惯!古希腊哲学家亚里士多德!优秀的测试人员并非与生俱来,要成为优秀的测试人员需要具备在各方面都比较高的素质,才能达到优秀!以下是我的个人理解:1、热爱测试工作,有志于成为这行专家首先我认为对待测试工作,热爱这个职业是成为优秀的测试人员首要要素,只有具备喜欢这行,才可能做得出色优秀超越别人。2、性格品质具备强烈的质疑习惯,但不钻牛角尖在测试

9、活动中,对待测试工作一丝苟,具备强烈的质疑习惯,怀疑一切,但不钻牛角尖,做事不能让开发牵着鼻子走,应有自己的思考。3、良好技术背景必须具备良好的技术背景,从对系统的理解及认识更深刻,只有具备良好的技术才有可能与开发处于同一平行线上,针对问题进行有效沟通!4、做个“聪明”的测试人员软件测试本质就是逻辑分析,进行相关覆盖测试检查工作,所以“聪明”测试人员,一定要具有很强的分析和逻辑思维能力。5、善于自我驱动管理软件开发可能每天,每周,每月都在进行Change,所以优秀的测试人员一定要具备如何识别这些活动和理解这些变化的影响范围,只有这样才能进行有效的跟踪测试检查。6善于学习,具备很强的求知欲望软件

10、开发行业发展很快,不论是软件开发模式及规模化,还是软件开发技术,所以测试人员必须必备很强的学习能力,来应对行业的发展需要,满足测试工作技能或业务上要求。7优秀的沟通能力优秀的测试人员必须具有很强的书面和口头沟通能力。优秀的测试人员必须能够阅读和分析产品需求文档、编写测试方案,测试用例和测试报告等;同时优秀的测试人员必须良好的口头能力,善于表达自己的观点,为什么这个缺陷必须修复?不修复会造成什么影响?在团队中发挥着调剂作用,消除各种不同意见,达成共识!8、熟悉自己所负责产品业务知识领域针对自己所负责的产品,熟悉相关业务知识,比如:负责证券行情测试,就必须了解证券行业相关业务知识,如:K线图,分时

11、图,黄昏之星等股票方面知识指标;9、每天对自己说我可以更好的工作每天可以花费时间去思考自己今天的测试工作,是否有哪些地方不足?有可改进的地方?下一次如果更换一种策略是否效率会提高很多!10、对自己的工作负责优秀的测试人员一定要具备强列的责任心,责任心的体现不仅仅是将自己手头上的工作完成,更应是建立在一定质量基础上,建立在口碑基础上,我们更应每天都询问下自己,我今天全心投入到测试工作了吗?最后,用一句话来说,优秀的测试人员身上是具有这些优秀的品质,所以他们才优秀的测试人员。三、常见软件测试的技巧软件测试虽然辛苦,但是掌握了一定的技巧之后将使你事半功倍。(1边界测试,测试用户输入框中的数值的最大数

12、和最小数,以及为空时的情况。(2非法测试,例如在输入数字的地方输入字母。(3跟踪测试,跟踪一条数据的流程,保证数据的正确性。(4在开始测试时应保证数据的正确性,然后在从系统中找出各种BUG。(5接口测试,程序往往在接口的地方很容易发生错误,要在此模块测试勿掉以轻心。(6代码重用测试,在开发过程中有些模块功能几乎相同,程序员在重用代码时可能忘记在原有代码上修改或修改不全面,而造成的错误。(7突发事件测试,服务器上可能发生意外情况的测试。(8外界环境测试,有些系统在开发时依赖于另外一个系统,当另外一个系统发生错误时,这个系统所受到的影响的情况。(9在程序员刚修复Bug之后的地方,再找一找,往往程序

13、员只修复报告出来的缺陷而不去考虑别的功能在修改时可能会重新造成错误。(10认真做好测试记录在做完一天的测试记录之后,第二天再根据第一天的测试记录重复测试你会发现有未修正的错误。(11文字测试,如果在系统中有用词不当的地方,我想这是不应该的。(12系统兼容测试,例如有些程序在IE6能运行正常,到IE5下不能运行。有些程序在WIN2000下能运行,而到WIN98却不能运行。像一些很特别的用户去使用系统,你很有可能发现BUG。(13用户的易用性测试,往往用户的需求是不断的变化的,而其中的一部份变化的原因,是有用户操作上不方便引起的。软件测试是软件开发中的重中之重,没有一点可以马虎的,在项目管理过程,

14、我强调的时是每个过程的每一个环节都要进行测试,保证系统在每个阶段可以控制。因为软件测试中考虑的问题基本上是项目管理中考虑的问题。我认为在项目管理中考虑的一些问题应该是在软件测试时有些体现,体现的内容是软件测试的一些侧重点,具体说,软件测试是事务性的,而项目管理是策略性,一些策略性的东西必须在一些事务性的事务上来实现。四、测试中的常见问题在测试过程中,一般把发现的错误bug按其严重性大致分为4类:致命错误(系统崩溃或挂起、破坏数据、严重错误(系统不稳定、产生错误结果、菜单功能无法实现、一般错误(在完成某一功能时出现错误,但并不影响该功能的实现、建议项(软件不完善或用户使用不方便之处。下面,我们主

15、要对一些显而易见的、容易被开发者忽略的错误进行列举和分析。这些错误一般很容易避免和修改,但会给用户造成使用上的困难。一、易用性问题:用户无法使用或不方便使用1、不符合用户操作习惯。如,快捷键定义不科学、不实用,键位分布不合理、按键太多,甚至没有快捷键。2、界面中英文混杂,界面元素参差不齐,文字显示不全。3、无自动安装程序或安装程序不完善。4、界面中的信息不能及时刷新,不能正确反映当前数据状态,可能误导用户,如数据库中剩余记录个数和参数设置对话框中的预设值常常显示为历史值而不是当前值。5、提示信息意文不明或为原始的英文提示。6、要求用户输入多余的、本来系统可以自动获取的数据。如:服务是否启动,安

16、装后用户需要手动修改某些配置文件。7、某一项功能的冗余操作太多。如对话框嵌套层次太多,影响用户操作。8、不能记忆用户的设置或操作习惯,用户每次进入系统都需要重新操作初始环境。9、对复杂的操作无联机帮助。10、流程性业务的逻辑处理,若存在流程性的业务,一般需求说明书上都有“流程图”,根据流程图的条件判断进行流程测试,考虑多种方案测试结果,并需考虑是否产生跨业务流程。二、稳定性问题:影响用户正常工作1、程序运行过程中不断申请,但没有完全释放资源,造成系统性能越来越低,并出现无规律的死机现象。2、不能重现的错误,有些与代码中的未初始化变量有关,有些与系统不检查异常情况有关。3、对一般性错误的屏蔽能力较差。4、对输入数据没有进行充分并且有效的有效性检查,造成不合要求的数据进入数据库。三、其他问题1、用户文档问题:无标准;无新功能

温馨提示

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

评论

0/150

提交评论