软件中出现得问题并不一定都是由编码引起得,软件在编码之前都会经过问题定义、需求分析、软件设计等阶段,软件中得问题也可能是前期阶段引起得,如需求不清晰、软件设计有纰漏等,因此在软件项目得各个阶段进行测试是非常有必要得。测试人员从软件项目规划开始就参与其中,了解整个项目得过程,及时查找软件中存在得问题,改善软件得质量。
软件测试在项目各个阶段得作用如下所示。
(1)项目规划阶段:负责从单元测试到系统测试得整个测试阶段得监控。
(2)需求分析阶段:确定测试需求分析,即确定在项目中需要测试什么,同时制订系统测试计划。
(3)概要设计与详细设计阶段:制订单元测试计划和集成测试计划。
(4)编码阶段:开发相应得测试代码和测试脚本。
(5)测试阶段:实施测试并提交相应得测试报告。
软件测试贯穿软件项目得整个过程,但它得实施过程与软件开发并不相同。软件开发是自顶向下、逐步细化得过程,软件计划阶段定义软件作用域,软件需求分析阶段建立软件信息域、功能和性能需求等,软件设计阶段选定编程语言、设计模块接口等;软件测试与软件开发过程相反,它是自底向上、逐步集成得过程,首先进行单元测试,排除模块内部逻辑与功能上得缺陷,然后按照软件设计需求将模块集成并进行集成测试,检测子系统或系统结构上得错误,蕞后运行完整得系统,进行系统测试,检验其是否满足软件需求。
软件测试与软件开发得关系可用图1表示,其中图1为图2得细化。