资源描述
单击此处编辑母版标题样式,单击此处编辑母版文本样式,第二级,第三级,第四级,第五级,2015/2/2,#,软件测试流程优化及方法,编写时间:,2015.02.02,编写,人:,EasonZhou,目前测试中存在的问题,一个故事描述测试演变,软件测试及测试方法,软件测试及测试用例,目录,Bug,生命周期,软件测试实施规范,目前测试存在的问题,测试几乎没有介入到软件研发中,且测试角色不明确;,如,测试只有在集成测试时才介入;测试不了解发布版本去向;测试同时担任,QC,,,QA,职位;等,测试比较简单,测试不完全;,如,测试几乎只进行集成测试,并无其他测试;测试停留在功能测试,该做性能测试的地方做的不够;等,没有设计需求,没有,测试用例,,,测试,属于想到哪里测试哪里,;,如,测试需要经常与工程开发沟通功能是否可用,功能用途,及如何使用;测试无计划,不知道什么时候开始及结束,没有节点;没有测试 用例;等,缺陷管理系统没有有效利用;,报告的提交及一些统计可以参考缺陷管理系统,对软件进行分析总结,对,Bug,高发生的位置进行重点测试;,Bug,统计困难;,版本发布频繁,没有测试计划,-,测试属于眉毛胡子一把抓情况,;,发布安装包数量为:,145,,假如每次发布,3,天时间测试,共需要,435,天,;等,测试,能力提高缓慢,;,一,个故事描述测试演变,国外,很多的大公司,,QA,的职责就是测试,(主要是系统测试),比如,IBM,、,CA-,全球最大的,IT,管理软件公司之一、,PeopleSoft-,协同合作企业软体全球领导供应,商,等,。其实在最初,几乎所有的公司都是这样的。后来,由于缺乏有效的项目计划,和项目管理,,留给系统测试的时间很少(注,:我以前做的一个项目,项目经理就明确告诉我系统测试就,1,天,没得商量),。另外,需求变化太快,没有完整的,需求,文档,测试人员就只能根据自己的想象来测试。这样一来,测试就很难保障产品的质量,事先预防的,QA,职能就应运而生。,QA,QC,一,个故事描述测试,演变,QC,兼任,QA,的问题:,一个,Bug,出现分歧,不知道是否需要修改,没有参考标准。,最终产品是否合格,没有参考标准。,QA,和,QC,两者,基本,职责:,QC,:检验产品的质量,保证产品符合客户的需求;,是产品质量检查者,;,QA,:审计过程的质量,保证过程被正确执行;,是过程质量审计者,;,注意区别检查和审计的,不同:,检查:就是我们常说的找茬,是挑毛病的;,审计:来确认项目按照要求进行的证据,;,QA,与,QC,在公司存在的必要性:,公司,QA,角色:测试工程师,工程人员,公司,QC,角色:测试工程师,工程人员,国外很多的大公司,,QA,的职责就是测试(主要是系统测试,),软件测试及测试方法,软件测试是,使用人工操作或者软件自动运行的方式来检验它是否满足规定的需求或弄清预期结果与实际结果之间的差别的过程。,它,是帮助识别开发完成(中间或最终的版本)的计算机软件(整体或部分)的正确度,(correctness),、完全度,(completeness),和质量,(quality),的软件过程;是,SQA,(software quality assurance),的重要子域。,多,语言测试,无论哪种测试都需要依靠测试用例开展,下面是测试用例举例,软件测试及测试用例,以,DataEngine,登陆界面为例:,测试用例(,Test Case,)是为某个特殊目标而编制的一组测试输入、执行条件以及预期结果,以便测试某个程序路径或核实是否满足某个特定需求。,测试用例(,Test Case,)元素:,单个功能测试用例为,30,个,,DataEngine,共,106,个功能,(,不完全统计,),,那么,30,*,106,至少,3018,条测试用例。,每个功能执行测试用例为,90,次,(3,种语言,),,一个,模块,执行至少需要执行,3018,*,3=9054,条测试用例,软件测试及测试用例,测试用例(,Test Case,)当前存在问题:,编写测试用例的时间:编写测试用例的时间比较紧张;,测试用例的维护:即需求或者功能变动时,测试用例需要完成维护,维护成本问题;,测试用例的数量:按照每个人,3,个模块,每个人需要编写,1w,个测试用例,每个人需要执行的测试用例为,3w(,三种语言,如果加上不同系统,需要执行的测试用例数更多,),,执行时间问题;,测试用例的利用率:测试用例的重复利用及效果还是未知数;,公共用例库的建设:目前没有公共用例库,增大每个测试组的无用功;,红色箭头标识为最简短的,Bug,生命周期,流程图其他箭头反应是实际,测试中,Bug,的其他走向,Bug,生命周期中部分地方可以提高,Bug,来源,Bug,分配,解决原因,产品项目分类,Bug,生命周期,1.Bug,来源,-,便于,Bug,统计,对于提高软件质量无影响,研发人员创建的,Bug,;,研发,人员以外人创建的,Bug(,包含技术支持、用户等,),;,新需求,2.Bug,分配,-,便于,Bug,统计,对于提高软件质量无影响,例如提交了一个,ReModel,模块发现的,Bug,;是,2D,或者底层问题,,Bug,会转到,2D,或者底层,统计,Bug,时无法统计,3.,解决原因,-,便于,Bug,统计,对于提高,软件质量有影响,保留原样:包含 有争议的,Bug,,即修改还是不修改。开发认为无法修复的,Bug,。,无效,Bug,:,Bug,本身不是,Bug,。设计需求是这么设计的。,结论:在解决原因中增加 无效,(invalid),Bug,生命周期,4.,产品与项目分类,-,便于,Bug,统计,对于提高,软件质量有影响,软件测试实施规范,过程要点,详细说明,输入条件,项目进入软件实现阶段(编码),工作内容,开发团队与测试团队交接测试内容,对测试目标达成一致,商讨测试计划的可行性,统一项目组的目标和测试的工作重点。,退出标准,明确测试内容与重点,测试方提交测试计划。,责任人,项目经理,测试经理,1,计划与设计阶段,1.1,召开测试启动会议,测试经理召集项目经理、开发经理开会确定测试交接时间,得到当前最新的相关资料。进行规模预估并成立测试团队,完成,测试计划,。,过程要点,详细说明,输入条件,测试需求明确,测试计划明确,工作内容,根据每一步测试计划编写全部的测试用例,退出标准,测试用例需要覆盖所有的测试需求,责任人,测试工程师,1.2,设计测试用例,在需求分析文档确立基线以后,测试组需要针对测试需求编写测试用例,在实际的测试中,,测试用例将是唯一实施标准。在用例的编写过程中,具体的任务和责任人如下:,2,实施测试阶段,2.1,实施测试用例,实施测试用例将花费测试组绝大部分时间,这些工作都是建立在前期很多计划工作的,基础上,。,软件测试实施规范,过程要点,详细描述,输入条件,测试用例,工作内容,测试工程师根据测试计划中分配给自己的测试任务,实施相应的测试用例,并将测试结果记录测试管理工具中,退出标准,测试用例中的所有任务被执行,结果被记录。,责任人,测试工程师,2.2,提交测试报告,在约定的测试周期完成之后,测试工程师需要总结此测试的结果,编写测试报告,过程要点,详细描述,输入条件,测试组完成了预定周期的测试任务,工作内容,测试工程师根据此轮测试的结果,编写测试报告,主要应包含以下,内容:,测试报告的版本,测试的人员和时间,测试所覆盖的缺陷测试组在这轮测试中所有处理的缺陷,,不仅要写出覆盖缺陷的总数,还要写明这些缺陷的去向,上一版本活动缺陷的数量,经过此轮测试,所有活动缺陷的数量及其状态分类,测试评估写明在这一版本中,哪些功能被实现了,哪些还,没有实现,这里只需写明和上一版本不同之处即可,急待解决的问题写明当前项目组中面临的最优先的问题,,可以重复,提出,退出标准,在每轮测试结束之后应尽快将符合标准的测试报告发给测试经理,责任人,测试工程师,软件测试实施规范,过程要点,详细描述,输入条件,测试组完成了所有的测试工作,工作内容,测试经理根据测试的结果及测试工程师提交的测试报告编写测试报告,测试报告必须包含以下重要内容:,测试资源概述多少人、多长时间,测试结果摘要分别描述各个测试需求的测试结果,产品实现了哪些功能点,哪些还,没实现,缺陷分析按照缺陷的属性分类进行,分析,测试需求覆盖率原先列举的测试需求的测试覆盖率,可能一部分测试需求因为资源和优先级的因素没有进行测试,那么在这里要进行说明,测试评估从总体对项目质量进行评估,测试组建议从测试组的角度为项目组提出工作建议,退出标准,测试经理完成了符合标准的测试报告,发送给项目经理。,责任人,测试经理,3,总结阶段,测试工作结束或即将结束时,测试组就要开始着手准备进行总结的工作。,3.1,编写测试报告,测试结束后测经编写测试报告,对测试进行总结并提交给项经,为产品后续工作提供重要的信息支持,3.2,测试验收,测试验收工作是在以上工作全部结束后,对测试的过程,效果进行验收,宣布测试结束。,软件测试实施规范,过程要点,详细描述,输入条件,测试验收通过,工作内容,归档测试过程所有文档,主要包括以下文档(必须),测试计划,测试用例,测试报告,验收报告,退出标准,全部文档归档完毕,责任人,测试经理,3.3,测试归档,测试归档是在测试验收结束宣布测试有效,结束测试后,对测试过程中涉及到各种标准文档进行归档。,过程要点,详细描述,输入条件,测试组完成了所有的测试实施工作,编写了符合标准的测试文档,工作内容,由测试经理进行测试验收,验收内容包括:,测试效果验收测试是否达到预期目的,测试文档验收测试过程文档是否齐全,符合标准,测试评估从总体对测试的质量进行评估,测试建议对本次测试工作指出不足,需要在以后工作中,改进,的地方,宣布测试结束测试组成员签字宣布本次测试结束,退出标准,签发测试验收报告,责任人,测试经理,
展开阅读全文