论集成测试及其应用(系分)
摘要
2017年1月,我作为项目负责人,参加了XX市××集团公司ERP财务管控项目,该项目合同金额500万元,合同工期为1年,该项目的主要目标为:1、搭建ERP财务管控平台,实现客户内部从孤岛系统到集团管控系统的转变;2、实现客户基础资料信息标准化,有效记录管理集团各类信息资源;3、建立规范的财务、资金、预算、费用报销、合并报表等的ERP系统操作规程,严控财务、资金、预算的业务流环节;4、提高客户内部部门联动性,提高企业分析与决策的能力,为企业下一步财务业务一体化目标打下坚实基础。
本文以该项目为例,结合本人项目实践,主要从1、单元测试;2、集成测试;3、系统测试;4、确认测试等四个方面的工作,来阐述说明系统测试工作,特别是集成测试对于信息系统开发项目的重要作用和积极影响。
正文背景
2017年1月,我作为项目负责人,参与并主导了XX市集团公司ERP财务管控运维项目,项目合同金额500万元,实施周期为1年。本项目产品架构基于JAVA开发的BS架构,数据库平台是oracle11g,中间件为IBM的websphere,该集团公司希望借助先进财务管控平台系统帮助客户提高工作效率,提升自身管理价值:1、从总部到下属分布在全国26个省份共计100个分子公司,每天的财务数据需实时高效从分子公司传递到集团总部,并将汇总的的财务数据定期生成汇总财务报表,改变原有信息系统孤岛的现象;2、实现严格对全集团各分子公司的关键单据、预算与资金工作流的审批与监控,3、因系统使用人员众多,系统分布区域广大,系统需确保高性能、高并发,以及高可用性,保证未来持续稳定运行等。由此,本项目不仅对软硬件环境要求较高,而且涉及实施组织庞大、实施业务复杂、实施周期长、项目干系人多,对项目的实施过程及开发管理也提出了较高的要求,特别是本项目的各阶段里程碑的测试工作,直接关系到项目能否成功验收,因而测试工作特别是集成测试在本项目显得尤为重要。项目客户方是第一次实施大型集团管控项目,缺乏项目经验,因此也充分认识到本项目存在包含测试在内的各类风险,在项目的启动会上,双方项目领导明确要求项目组应把握好项目风险,有针对性的制定相关管控措施,确保项目的顺利开展。
项目的成功验收,离不开测试阶段的细致工作,前期根据需求规格说明书所完成的开发成果,不能脱离测试而直接交付给客户进行使用,因为需求规格说明书层面仅代表需求层面的确认,而不代表代码层面的正确性,无法保证软件质量,只有经过测试阶段的工作,才能验证软件是否满足从概要设计、详细设计到需求规格说明书等软件质量要求,也决定了项目最终能否验收。因此,针对本项目的产品和开发交付混合且复杂、难度高的特点,更多的关注在集成测试方面,为此我做了如下相关测试保障措施:
一、单元测试
单元测试也叫模块测试,该测试对应的技术依据是软件详细设计说明书,测试目的是检查详细设计说明书中定义模块的功能、性能、接口等约束条件,以发现模块内可能存在的差错。在本项目中,针对产品和开发部分,我采用孤立测试的单元测试策略,即不考虑模块之间关系。1、标准产品部分,顾问依据制定的测试方案中的单模块测试用例,进行单模块的功能和接口测试,发现bug,立即反馈开发人员修改;2、二次开发代码部分,使用人工检查代码的方式来检查代码逻辑,即开发和测试人员各配一名,在程序员完成编译,测试人员立即对源程序代码进行分析和检验,发现程序中的错误,开发人员立即对程序进行修改调整,这样从项目进度上尽可能的既确保测试质量的前提下,又保证单元测试时间的控制;同时,测试人员同步更新测试文档,做为项目过程资产。在单元测试的基础上,再将所有的软件单元按照概要设计规格说明的要求组装成模块、子系统或系统,为下一步的集成测试工作做好准备。
二、集成测试
集成测试对应的技术依据是软件概要设计文档,该测试的目的是检查模块之间,以及模块和已集成的软件之间的接口关系,并验证已集成的软件是否符合设计要求。进行集成测试测试之前,应确保单元测试的完成。
由于本项目是大型erp集团管控项目,业务及模块之间的接口关系复杂,从客户方的角度,测试首要关注的是整体的功能和流程,客户方对于项目测试报告的确认也是基于功能的测试结果。因此,本项目上,我采用基于功能的集成策略做测试工作,即:从软件功能角度出发,按照功能的关键程序组织模块的集成顺序。1、对功能的优先级进行排序;2、确定优先级最高的功能路径,把该路径上所有模块集成到一起,并综合考虑驱动模块和桩模块;3、增加一个关键功能,通过重复1~3的步骤,把所有模块全部集成到被测试系统中。同时,时时记录和更新测试文档。整个集成测试的方案是采用自底向上加黑盒测试方式,测试过程,完全关注概要设计文档及需求规格说明书定义的功能、接口等满足程序以及程序差错情况。同时,测