软件测试对象
- 根据软件定义,软件包括程序、数据和文档,所以软件测试并不仅仅是程序测试。
- 在整个软件生命周期中,各阶段有不同的测试对象,形成了不同开发阶段的不同类型的测试。
- 需求分析、概要设计、详细设计以及程序编码等各阶段所得到的的文档,包括需求规格说明、概要设计规格说明、详细设计规格说明以及源程序,都应成为“软件测试”的对象。
测试
- 在软件编码结束后,对编写的每一个程序模块进行测试,成为“模块测试”或“单元测试”
- 在模块集成后,对集成在一起的模块组件,有时也可称为“部件”,进行测试,称为“集成测试”
- 在集成测试后,需要检测与证实软件是否满足软件需求说明书中规定的要求,这就称为“确认测试”
- 将整个程序模块集成为软件系统,安装在运行环境下,对硬件、网络、操作系统及支撑平台构成的整体系统进行测试,称为“系统测试”
verification&validation
验证与确认都属于软件测试,包括对软件分析、设计以及程序的验证和确认。
- 验证(verification)是保证软件正确实现特定功能的一系列活动和过程,目的是保证软件生命周期中的每一个阶段的成果满足上一个阶段所设定的目标。
- 确认(validation)是保证软件满足用户需求的一系列活动和过程,目的是在软件开发完成后保证软件与用户需求相符合。
tips
由于软件分析、设计与开发个极端是互相衔接的,前一阶段工作中发生的问题如未及时解决,很自然要影响到下一阶段。从源程序的测试中找到的程序错误不一定都是在程序编写过程中产生的。如果简单地把程序中的错误全都归罪于程序员,未免冤枉了他们。
欢迎补充改正~( • ̀ω•́ )✧
参考:
[1] 《软件评测师教程》