APP下载

大型软件开发中敏捷测试方案的选择

2019-02-13吴世竞

数字通信世界 2019年5期
关键词:黑盒测试阶段测试人员

吴世竞

(中兴通讯股份有限公司,天津 300000)

1 引言

敏捷开发强调的主要是迭代、循序渐进的开发方式,其核心是测试驱动开发,整个开发过程灵活可变。敏捷开发可以快速的将项目推入实质开发阶段,开发、测试人员直接与客户沟通,需求确定快速准确,能很快的给出一个用户可见的V1.0产品,根据用户需求快速修改软件问题,缩短软件发布周期。同时测试和用户介入早,产品的不合理及问题能尽早暴露,方便及时修改,甚至能及时更正产品需求。但是敏捷开发注重人员沟通,文档留存相对较少,可是大型软件的开发往往项目时间长、人员流动大,那么传统的敏捷开发将不再适用。

2 大型软件敏捷开发

大型软件开发特点:功能模块多、开发交付周期长、性能及稳定性要求高。项目时间长不可避免的会出现人员流失,如果完全按照简单的敏捷开发测试的方式进行就有可能会因为文档不全面出现交接时间长、交接不清楚的问题。功能模块多就对各模块之间的交互测试要求较高,需要进行大量的探索性测试,这样依靠自动化测试就不能满足要求了,必须进行一定程度的系统性的探索测试。

大型软件敏捷开发的核心就是要把一个长时间、多功能的项目分为多个可以短时间完成且可以独立执行的小故事,并保证整体软件一直良好运行。敏捷的重点一般体现在需求确定阶段、各子功能各自的开发阶段、交付测试阶段。

3 敏捷测试方案的选择

大型软件项目各个阶段的目标不同,敏捷测试的策略及方法的选择侧重也不尽相同。

(1)需求分析及产品设计阶段

测试人员,包括系统测试经理、各主要功能模块测试负责人,尽早参与需求分析及产品设计,了解需求来源,直接接触客户,深入了解客户需求。

大型软件开发必须需求文档,需求文档要经过测试人员测试,提出需求缺陷并跟踪修改,这样可大大减少开发完成后的各测试阶段发现需求不合理导致的需求修改。保证可以根据需求文档得出明确可执行的需求验收准则,尤其系统级别,如软件的性能、稳定性、可移植性等非功能性的要求,并为此输出项目组、用户认可的系统测试文档。

(2)功能模块划分阶段

各功能模块测试负责人参与,项目组组织,遵循高内聚、低耦合的准则划分功能模块,并保证各功能模块的可测试性。功能模块划分的好坏直接决定着功能模块能否敏捷开发。之后测试人员根据需求文档及功能说明,形成详细的测试通过准则(AC)及测试用例(TC),甚至用详尽的TC 代替AC,减少工作量。

(3)功能模块开发及交付阶段

敏捷测试中需求驱动开发、测试驱动开发的典型应用阶段。自动化测试代码先行、迭代开发等敏捷测试策略及方法均能在此过程中完美适用。

开发人员实现功能代码之前先实现测试代码,测试代码须覆盖功能代码的每个分支流程,实现自动化的白盒测试。测试人员根据功能TC,在开发功能完成之前先完成黑盒(功能)自动化用例的编写。每个迭代开发完成后都经过白盒+黑盒自动化测试,之后再由测试人员执行手动测试,跟踪故障并根据故障更新TC及黑盒自动化测试用例。如此测试、开发迭代进行,直至功能完全交付。此阶段,开发人员自测或者测试人员结对开发,一定要注意工作角色的转变,开发人员白盒测代码一定不能代替黑盒测试代码。测试人员尤其是同时承担测试工作的开发人员一定要秉承专业的测试素养,依据AC、遵从TC 进行测试,避免受到开发思维的干扰。

(4)集成测试阶段

分支模式开发,采用自动化冒烟的方式,为每个新合入到主干的功能做第一道防护,保证不影响主干分支已有功能,否则直接回退。在新合入功能之后,选择典型测试场景实现自动化用例,增加至原有的冒烟用例中。如此循环迭代,快速有效的完成集成测试。

(5)系统测试阶段

敏捷测试中,系统测试阶段完全可以精简测试计划,主要针对系统的稳定性、可移植性、抗压性等进行测试,并且完全可以采用自动化的方法。当然,大型软件的系统测试单纯依靠敏捷测试手法并不能完全满足要求,必要的探索性测试、多场景的交叉测试、异常测试都是不可或缺的。

(6)发布测试阶段

对于多用户软件而言,发布测试要重点考虑真实用户,可以做出试用版本,邀请部分用户试用并提出建议。

4 结束语

敏捷测试要求测试人员具备分析、测试及代码编写能力,这也是敏捷测试不同与传统测试的一个重点要求,要求测试人员根据需求不断调整测试重点及方法。总体而言,大型软件的敏捷测试就是要求一群高素质测试人员,依据大型软件的特点,在软件开发测试的各个阶段尽可能合理的精简文档,尽量多的采用TDD、早介入、自动化等敏捷测试手段,指导软件开发、完成测试任务。

猜你喜欢

黑盒测试阶段测试人员
一种基于局部平均有限差分的黑盒对抗攻击方法
浅谈计算机软件工程技术中的逻辑运用
软件测试误区分析
浅析软件测试中的心理学应用
Android应用软件测试研究
关于改进英语专业高级英语教学过程的分析
绿植防辐射只是个传说,是真的吗?
犯罪心理测试人员素质要求分析