软件测试总结
1.软件生命周期(SDLC)的六个阶段
1、问题的定义及规划
此阶段是软件开发方与需求方共同讨论,主要确定软件的开发目标及其可行性。
2、需求分析
在确定软件开发可行的情况下,对软件需要实现的各个功能进行详细分析。需求分析阶
段是一个很重要的阶段,这一阶段做得好,将为整个软件开发项目的成功打下良好的基
础。"唯一不变的是变化本身。",同样需求也是在整个软件开发过程中不断变化和深入的 ,
因此我们必须制定需求变更计划来应付这种变化,以保护整个项目的顺利进行。
3、软件设计
此阶段主要根据需求分析的结果,对整个软件系统进行设计,如系统框架设计,数据库设
计等等。软件设计一般分为总体设计和详细设计。好的软件设计将为软件程序编写打下良
好的基础。
4、程序编码
此阶段是将软件设计的结果转换成计算机可运行的程序代码。在程序编码中必须要制定统
一,符合标准的编写规范。以保证程序的可读性,易维护性,提高程序的运行效率。
5、软件测试
在软件设计完成后要经过严密的测试,以发现软件在整个设计过程中存在的问题并加以
纠正。整个测试过程分单元测试、组装测试以及系统测试三个阶段进行。测试的方法主要
有白盒测试和黑盒测试两种。在测试过程中需要建立详细的测试计划并严格按照测试计划
进行测试,以减少测试的随意性。
6、运行维护
软件维护是软件生命周期中持续时间最长的阶段。在软件开发完成并投入使用后,由于多
方面的原因,软件不能继续适应用户的要求。要延续软件的使用寿命,就必须对软件进行
维护。软件的维护包括纠错性维护和改进性维护两个方面。
2.软件生命周期模型
从概念提出的那一刻开始,软件产品就进入了软件生命周期。在经历需求、分析、设计、
实现、部署后,软件将被使用并进入维护阶段,直到最后由于缺少维护费用而逐渐消亡。
这样的一个过程,称为"生命周期模型"(Life Cycle Model)。
典型的几种生命周期模型包括瀑布模型、快速原型模型、迭代模型。
瀑布模型的特点(文档是主体),很多的问题在最后才会暴露出来。迭代模型比瀑布模型
问题暴露的要早;快速原型法比瀑布模型直观。
3.软件测试概念
广义概念:指软件生存周期中所有的检查、评审和确认工作,其中包括了对分析、设计阶
段,以及完成开发后维护阶段的各类文档、代码的审查和确认
狭义概念:识别软件缺陷的过程,即实际结果与预期结果的不一致
4.软件测试目的
ü 测试的目的就是发现软件中的各种缺陷
ü 测试只能证明软件存在缺陷,不能证明软件不存在缺陷