传统的软件测试流程:一般是在软件开发过程中进行少量的单元测试。然后在整个软件开发结束阶段,集中进行大量的测试,包括功能和性能的集成测试和系统测试。随着软件开发的越来越复杂,传统的软件测试流程不可避免的给我们带来以下问题:
问题一:项目进度难以控制,项目管理难度加大。
大量的软件错误往往只有到了项目后期系统测试阶段才被发现,解决问题花费的时间很难预料, 经常导致项目进度无法控制,同时在整个软件开发过程中,项目管理人员缺乏对项目质量的了解和控制,加大了项目管理难度。
问题二:对项目风险的控制能力较弱项目风险在项目开发较晚的时候才能够真正降低。往往是经过系统测试之后,才真正确定该设计是否能真正满足系统功能、性能和可靠性方面的需求。
问题三:软件项目开发费用超过预算。在整个软件开发周期中,错误发现的越晚,单位错误修复成本越高,错误的延迟解决必然导致整个项目成本的急剧增加。
IBM Rational 软件自动化测试最佳成功经验解决传统测试问题。
核心的三个最佳成功经验是:尽早测试、连续测试,自动化测试,并在此基础上提供了完整的软件测试流程和一整套的软件自动化工具,使我们最终能够做到:一个测试团队,基于一套完整的软件测试流程,使用一套完整的自动化软件测试工具,完成全方位的软件质量验证。
成功经验一:尽早测试
所谓尽早测试是指在整个软件开发周期中通过各种软件工程技术尽量早的完成各种软件测试任务的一种思想。IBM Rational 主要在以下三个方面为我们提供的尽早测试的软件工程技术:
首先,软件的整个测试生命周期是与软件的开发生命周期基本平齐的过程。即当需求分析基本明确后我们就应该基于需求分析的结果和整个项目计划来进行软件的测试计划;伴随着分析设计过程同时应该完成测试用例的设计;当软件的第一个发布出来后,测试人员要马上基于它进行测试脚本的实现,并基于测试计划中的测试目的执行测试用例,对测试结果进行评估报告。这样,我们可以通过各项测试指标实时监控项目质量状况,提高整个项目的控制和管理。
项目计划、需求管理―――测试计划
测试计划、分析设计―――测试设计
测试设计―――测试实现
测试实现―――测试结果评估