软件测试是为了发现错误而执行程序的过程。它不仅是软件开发阶段的有机组成部分,而且在整个软件工程(即软件定义、设计和开发过程)中占据相当大的比重。软件测试是软件质量保证的关键环节,直接影响着软件的质量评估。软件测试不仅要讲究策略,更要讲究时效性。验收测试作为软件测试过程的最后一个环节,对软件质量、软件的可交付性和软件项目的实施周期起到"一锤定音"的作用。
1、ERP验收测试的现状
验收测试是一种有效性测试或合格性测试。它是以用户为主,软件开发人员、实施人员和质量保证人员共同参与的测试。ERP(企业资源规划)作为提高企业管理创新能力的有力工具,其定义、设计、开发、实施和应用的过程遵循一定的规律。这些规律表现在软件过程控制、质量保证和软件测试等方面。验收测试关系到ERP能否成功验收,能否平滑步入维护期,能否快速实现效益。ERP验收测试的全面性、效率性、科学性、规范性、彻底性在广大制造业企业和ERP软件供应商中还是一个崭新的话题。
当前很多人对ERP验收测试工作存在一些误解:
(1)由于ERP软件的复杂性、规模性,人们可能更多地关注它多变的需求定义、个性化解决方案、定制化开发过程,却轻视了项目的验收工作。这些"只重视开题和过程,不重视结题和维护"的做法,最直接的后果就是,形成了一个个延期工程或"烂尾"项目。
(2)ERP实施工作做好了,用户企业可以把系统跑起来了,文档移交了,客户签字了,还有什么必要做验收测试。这种误解源于对验收测试的目的、流程、方法和意义缺乏认识。
(3)验收测试是用户企业的事,与软件服务提供商无关。事实上,只有两者密切配合,才能提高测试效率。
(4)将验收测试理解成给用户做演示。验收测试要讲究策略,不是走走过场,而是有计划有步骤的执行活动,要进行科学的用例设计。
(5)验收测试就是验证软件的正确性。验收测试和其他的测试一样,既要验证软件的正确性,又要发现软件错误。只不过,验收测试是以确认软件功能是否满足需求为主。
2、ERP验收测试的流程及方法原则
软件包括程序、数据和文档。ERP验收测试的对象应当含盖这三个方面。验收测试的主体要以用户企业为主,ERP软件服务供应商积极配合;或以第三方测试为主,用户和软件供应商共同配合。
ERP验收测试的基本流程如下图所示,软件实施人员要适时配合和敦促用户做好验收测试的各项准备工作,按计划按步骤执行验收测试,形成规范的测试文档,客观地分析和评估测试结果,并跟踪不合格现象,对软件问题要分级分类管理,必要时要进行回归测试,确保所有问题能得到关闭,最终成功通过验收。
在测试方法上,由于验收阶段的特殊性,一般以黑盒测试和配置复审为主,以自动化测试和特殊性能测试为辅,用户、软件开发实施人员和质量保证人员共同参与。
ERP验收测试要注意以下几个原则问题:
(1)验收测试始终要以双方确认的ERP需求规格说明和技术合同为准,确认各项需求是否得到满足,各项合同条款是否得到贯彻执行。
(2)验收测试和单元测试、集成测试不同,它是以验证软件的正确性为主,而不是以发现软件错误为主。
(3)对验收测试中发现的软件错误要分级分类处理,直到通过验收为止。
(4)验收测试中的用例设计要具有全面性、多维性、效率性,能以最少的时间在最大程度上确认软件的功能和性能是否满足要求。
3、ERP验收测试的内容及用例设计
ERP验收测试的目的是确认系统是否满足产品需求规格说明和技术合同的相关规定。通过实施预定的测试计划和测试执行活动确认软件的功能需求、性能需求和文档需求。ERP是较复杂的大规模性软件,其验收测试应当涵盖确认测试和系统测试两个方面的内容。具体包括以下测试内容:安装测试、功能测试、界面测试、性能测试、文档测试、负载压力测试、恢复测试、安全性测试、兼容性测试等。下面结合ERP验收测试的具体内容,谈谈用例设计的注意事项。
(1)安装测试
安装测试的目的在于验证软件能否在不同的配置情况下完成安装,并确认能否正常运行。ERP安装测试的用例设计要注意以下几点:
第一,根据ERP的可移植性,选择不同操作系统。
第二,选择不同层次的硬件配置和软件配置,一般选用最低、中等和最高三种配置进行测试,验证系统对软硬件环境的依懒性。
第三,观察ERP安装程序在软硬件资源充足的情况下能否正常安装,安装过程中是否给予充足的提示,是否存在流氓软件的一些弊病,安装完成后能否正常运行,能否彻底删除。
第四,在资源不充沛的情况下,如磁盘空间不够、内容不足等,系统能否完成安装,能否给予各种提示。
(2)功能测试
功能测试是验收测试中的主要内容。ERP功能测试要包含以下项目:单个模块的查询、增加、删除、修改、保存等操作;数据的输入与输出;数据处理操作,如导入、结转等;基础数据定义的精度;计算的准确性,如仓库的历史库存、当前库存、货位库存是否准确;数据共享能力;身份验证和权限管理;接口参数和系统控制参数;单据流转情况;状态控制,如系统是否对MPS在执行MRP分解、工单下达、车间任务调度等操作前后的状态做了标识,状态的改变是否正确;报表的打印输出;审批流程定义及各种审批、反审批操作;短信发送及管理;岗位及部门业务的操作,如从请购管理、采购计划到采购订单管理,再到采购到货管理;跨部门的业务操作,如从销售订单到主生产计划,从车间领料到仓库出库等等。
ERP功能测试的用例设计要注意以下几点:
第一,测试项目的输入域要全面。要有合法数据的输入,也要有非法数据的输入。如,在测试基础数据的定义时,若规定是数字,则既要输入数字进行测试,也要输入字母、空格等非数字进行测试。数字包含整数、负数、小数,因而还要输入这些不同的数字验证数字的精度。
第二,划分等价类,提高测试效率。在考虑测试域全面性的基础上,要划分等价类,选择有代表意义的少数用例进行测试,提高测试效率。如,若MRP记录有"刚形成"、"已派工""正执行"、"已完成"四种状态,系统只允许对刚形成的MRP记录做局部性修改或删除操作,那么在测试时,将MRP记录划分为四类,每种状态对应一类,每类各选一条记录作为测试用例即可。
第三,要适时利用边界值进行测试。如"订单预排"中一般要求预排的数量大于0,那么测试数据可以分别为0,-1,1,10000000(一个非常大的正数)。
第四,重复递交相同的事务。
第五,不按照常规的顺序执行功能操作。
第六,验证实体关系,实体间的关系有三种:一对一,一对多,多对多。如,一个MPS对应多个MRP,一个MRP对应多个车间任务。
第七,执行正常操作,观察输出结果的异常性。如,删除某条记录对排序的影响;执行审批后,单据的状态是否改变。
(3)界面测试
ERP界面要符合现行标准和用户习惯。软件企业可以形成自己的特色,但要确保整个软件风格一致。界面测试要从友好性、易操作性、美观性、布局合理、分类科学、标题描述准确等方面入手。测试用例的设计要重点掌握以下几点:
第一,背景和前景的颜色是否协调,颜色反差是否用得恰当。
第二,软件得图标、按钮、对话框等外观风格是否一致,美观效果所要求的屏幕分辨率。
第三,窗口元素的布局是否合理,并保持一致。
第四,各种字段标题的信息描述是否准确。
第五,快捷键、按钮、鼠标等操作在软件中是否一致。
第六,窗口及报表的显示比例和格式是否能适应用户的预期需求。
第七,误操作引起的错误提示是否友好。
第八,活动窗口和被选中的记录是否高亮显示。
第九,是否有帮助信息,菜单导航能否正常执行。
第十,检查一些特殊域和特殊控件能否运行。
(4)性能测试
性能测试主要测试软件的运行速度和对资源的消耗。通过调整ERP所依赖的软硬件配置、网络拓补结构、工作站点数、数据量和服务请求数来测试软件的移植性、运行速率、稳定性和可靠性。一般借助WinRunner之类的企业级自动化测试工具来辅助测试,通过极限测试来分析评估软件性能。
(5)文档测试
文档是软件的重要组成部分,也是软件质量保证和软件配置管理的重要内容。文档测试主要通过评审的方式检查文档的完整性、准确性、一致性、可追溯性和可理解性。ERP作为一个大规模软件,覆盖了企业的各种业务。它至少要具备需求定义、开发设计、测试评估、项目管理、用户应用这五类文档,具体而言,应包含GB8567-88中规定的14种软件文档。
在文档复审时,要特别注意以下几点:
第一,要明确文档验收的标准,软件企业和用户企业要达成一致。
第二,确定文档的重要性和项目文档需求,比如,在验收阶段,用户文档(用户手册、操作手册、维护手册、联机帮助文件)显得特别重要,需要认真评审。
第三,检验文档完整性,主要是文档的种类和内容的完整性。
第四,检验文档的一致性和可追溯性,主要是:软件的设计描述是否按照需求定义进行展开的;应用程序是否与设计文档的描述一致;用户文档是否客观描述应用程序的实际操作;关于同一问题的描述是否存在不同的说法。
第五,检验文档的准确性,主要是文档的描述是否准确,有无歧义,文字表达是否存在错误。
第六,检验文档的可理解性,主要审核文档是否针对特定的读者群体,表达是否详细。如,ERP操作手册,除了描述每个模块的操作,应该还提供关联性岗位业务、部门业务和跨部门业务的操作说明。
|