概念
尽快找出软件系统中的缺陷并督促相关人员修复,保证软件系统正确性,完整性,安全性和质量的过程
软件开发的过程
瀑布模型
测试驱动开发TDD
增量开发
原则
不可能全部测完
软件测试是有风险的
不能展示隐藏的缺陷
找到越多的缺陷,被后肯定有更多的缺陷
不是所有的缺陷都需要被修复
一个缺陷是否真的是一个缺陷?这很难说
需求是永远不会圆满的
软件测试人员并不是最受欢迎的
软件测试是一件专业的事情
团队建立
团队工作
人员配置
测试组长
配环境的
测试设计人员
执行人员
模型
H模型
强调软件测试是独立流程/在某个开发过程就绪后即可开始某个阶段的测试
W模型
v模型的改进,强调测试在设计和开发过程中同步进行(静态/动态测试)
同样是以瀑布模型为基础的线性过程,不支持迭代
冒烟测试
每次内容更新后都进行基本测试
确保被测试内容基本没有问题再进行细致测试,以免时间浪费
QSA(软件质量保证)
对软件产品和活动有计划的进行评审和审计来验证软件是否合乎标准的系统工程活动
管理整个软件测试的过程
软件测试是QSA的一个手段
软件测试为QSA提供依据
软件配置管理SCM
定义
执行版本控制,变更控制,使用合适的配置管理软件保证所有配置项的完整性和可跟踪性
软件配置项
合同,过程,设计相关的文档和数据
源码,目标代码和可执行代码
相关工具
基线
一个配置项在其生命周期的某一特定时间,被正式表明,固定并经正式批准的阶段性版本