高等职业教育实验实训系列教程软件测试实验指导书主编:余涛、段孝义编委:前言为了培养面向21世纪IT行业生产第一线的高科技人才,加强职业高等院校学生的实际动手操作能力,项目开发能力,以及学生的创新意识的培养,编写了《软件测试》实验教程。本实验指导书在编写中突出了实用性,设置了大量的实践性强的实验。实验练习的内容都是在实际运用软件测试活动,他们在开发软件项目过程中广泛使用的,既有针对单个知识点的实验,也设置了综合性能比较强的实验,便于提高学生的实际动手能力以及对教材内容更深刻的理解。实验指导书在编写过程中,得到了软件测试行业很多同仁的关心与支持,在此我们表示深深的感谢。由于编者的水平有限和时间的仓促,书中难免有不妥和错误之处,殷切期望读者批评和指正。编者2010.6I目录实验一熟悉软件测试流程及活动...............................................................................................2实验二需求测试...........................................................................................................................8实验三测试计划制定...................................................................................................................10实验四测试计划评审...................................................................................................................16实验五测试自动化之测试流程管理自动化.............................................................................18实验六测试方案设计...................................................................................................................32实验七测试用例设计...................................................................................................................36实验八测试设计评审.................................................................................................................40实验九测试环境搭建.................................................................................................................32实验十测试执行及回归.............................................................................................................41实验十一缺陷汇报及跟踪管理...................................................................................................42实验十二测试报告.......................................................................................................................44实验十三测试报告评审.............................................................................................................47实验十四质量分析及测试总结.................................................................................................49实验十五测试总结及分析评审...................................................................................................51实验十六测试自动化之功能测试自动化.................................................................................53实验十七测试自动化之性能测试自动化...................................................................................732实验一熟悉软件测试流程及活动一、实验目的1.了解标准的软件测试流程,并深刻理解和掌握软件测试流程。2.实施软件测试流程中的每个活动,并掌握流程中每个活动的目的,意义以及运作顺序。3.了解软件开发的流程,并深刻理解和掌握软件测试流程和软件开发流程的关系。4.重点掌握软件测试活动如何切入到整个软件生命周期,如何与软件开发活动互相紧密配合。二、实验准备下面以学生选课及成绩信息管理系统为例来简单学习软件测试的过程,以及与开发活动的配合。1.软件测试流程及与开发的关系介绍文档(1)参照模型3(2)软件开发流程(3)软件测试流程①测试总体流程②需求阶段流程用户需求需求分析架构/概要设计详细设计单元测试组装测试编码确认测试系统联调详细设计总体设计软件需求系统需求型号任务编译后的单元测试后的单元组装后的软件测试后的软件交付测试确定测试目标测试设计测试实施测试结果测试评审测试总结不符合测试要求评审不通过测试格合不量质或测试有重大偏差比较两个4③设计及编码阶段流程④测试实施阶段流程需求分析报告需求评审需求培训需求更改评审不通过通过测试人员工作及需交付的工作项1、参与需求培训需求培训2、参与需求评审3、得出系统测试方案4、制定测试计划设计评审编码评审不通过通过测试人员工作及需交付的工作项1、参与设计评审概要设计2、制定测试方案和用例3、抽象出系统验证标准详细设计集成测试方案自动测试方案抽象出验证标准单元和模块测试4、进行单元测试5、进行单模块测试5⑤缺陷管理及跟踪流程系统测试验收测试评审不通过通过测试人员工作及需交付的工作项1、参与测试评审集成测试2、提交测试问题报告等3、提交系统测试评价报告测试评审集成测试方案自动测试方案验收测试标准4、给出质量合格证书系统测试方案提交新建测试项目申请新建测试项目描述提交新建问题单通知相关人员回复问题单通知相关测试员回归测试问题归档修改确认问题回转问题统计跟踪62.项目背景业务介绍根据用户需求进行项目的业务描述。3.软件开发过程产品(1)开发过程输出文档①《项目开发计划》②《用户需求说明书》③《需求分析说明书》④《架构设计》⑤《概要设计》⑥《详细设计》⑦《单元测试用例》⑧《单元测试报告》⑨《系统联调报告》⑩《项目总结报告》(2)开发过程输出源码及目标码①源代码②目标码③安装程序4.软件测试流程过程产品模板①《软件测试计划模板》②《软件测试方案模板》③《软件测试用例模板》④《软件BUG记录模板》⑤《软件测试报告模板》⑥《软件测试总结及分析模板》三、实验内容1.初步无方法和无系统性的进行测试流程中的所有活动。2.在进行测试活动过程中,逐步抛出开发过程产品进行对活动输入,让学生了解两个过程的配合。四、实验步骤1.提取测试需求第一步:根据《用户需求说明书》和《需求分析说明书》进行需求提取,无系统性和科学性的提取。第二步:建立测试需求表格。2.创建测试计划第一步:将提取的测试需求进行优先级等排序,完善测试需求表格。第二步:根据《项目开发计划》和《测试计划模板》进行测试计划的编写。第三步:简单评审《测试计划》,关注评审活动的过程。3.制定测试方案第一步:根据测试需求表格中的测试需求按测试方案模板进行分类。第二步:根据《测试方案模板》对上步中的分类需求进行方案编写。74.测试用例设计第一步:根据《架构设计》、《概要设计》和《测试用例模板》无方法指导的设计测试用例,并形成测试用例库。第二步:简单评审测试设计输出产品,关注评审活动的过程。5.实施测试准备活动根据《系统联调报告》搭建测试环境。6.测试执行和回归根据测试形成的测试用例库执行测试,并进行一个版本的回归测试。7.缺陷记录根据《软件BUG记录模板》填写测试执行过程中发现的BUG。8.测试报告根据《软件测试报告模板》对第一次测试和一次回归测试进行测试报告编写。9.测试总结及质量分析第一步:根据《软件测试总结及分析模板》编写测试总结和质量分析结果。第二步:简单评审测试结果,关注评审活动的过程。五、实验报告学生实验、实训报告一、实验名称:二、实验报告:三、实验报告内容:(包括实验结论以及实验分析)8实验二需求测试一、实验目的1.掌握黑盒测试和静态测试方法,并深刻理解黑/白盒测试和静/动态测试方法的意义和区别。2.掌握需求测试的目的和范围。3.掌握需求测试的理论方法和实践方法。二、实验准备1.准备好《用户需求说明书》文档;2.准备好《需求分析说明书》文档;3.准备好黑/白盒/静/动态测试的介绍文档(已包含于讲义中);4.准备好需求测试范围和方法指导文档。三、实验内容1.需求的二义性测试;2.需求的一致性测试;3.需求的可测性测试;4.提起阶段最终的测试需求,形成测试需求表。四、实验步骤1.深刻理解需求测试的类别第一步:学习黑/白盒/静/动态测试的介绍文档;第二步:举例说明理解黑/白盒测试和静/动态测试方法的意义和区别。2.深刻理解需求测试的范围和方法第一步:学习需求测试范围和方法指导文档;第二步:举例说明需求测试方法的意思和区别。3.深刻理解用户需求第一步:阅读《用户需求说明书》,深刻理解业务。第二步:与同学及指导老师交流业务需求。4.测试《需求分析说明书》第一步:阅读《需求分析说明书》;第二步:在阅读《需求分析说明书》时,将需求中所分析的需求点进行摘录下来;第三步:对照摘录的需求,与《用户需求说明书》逐条进行对比,查看经过分析后的需求所描述的功能等需求点是否是用户需求说明书中所描述的本意,即为需求的一致性测试;第四步:对照摘录的需求,逐条检查描述是否清楚,是否能够衍生出多种理解,即为需求的二义性测试;第五步:对照摘录的需求,逐条考虑是否可以进行验证,如功能是否可以在一组输入后得到不同的可观察输出,性能定义是否有明确的数据支持等,即为需求的可测性测试。5.提交问题及回归将需求测试的问题进行记录,并提交,待需求修正后再次进行测试,并将最终形成测试需求9表格,做为下个实验的输入。五、实验报告学生实验、实训报告一、实验名称:二、实验报告:三、实验报告内容:(包括实验结论以及实验分析)10实验三测试计划制定一、实验目的1.通过对提取的测试需求进行分类,掌握软件的质量特性。2.学习测试计划的编写,并掌握测试计划的目的以及由那些必需的内容组成。3.学习根据软件质量特性分类的测试需求来制定普遍的测试策略和方法,并掌握所有的测试策略和方法对应的需求特性。4.掌握根据项目特性如何来裁减组织