软件测试工作:收益
客户:保障客户第一时间获得良好的产品使用体验。
企业:提高软件企业的产品质量,促进企业软件开发过程的改进。
员工:增加软件开发的技能经验,增加一定的物质回报。
软件测试地位:
IBM-RUP:横向思维考查软件测试地位
工作项/阶段:初始|细化|构造|提交
需求 ------|----|----|-------
分析 ------|----|----|-------
设计 ------|----|----|-------
实现 ------|----|----|-------
测试 ------|----|----|-------
CMMI:纵向思维考查软件测试地位
需求
↓
分析
↓
设计
↓
实现和单元测试
↓
集成测试
↓
系统测试
↓
验收测试
软件测试依据和验证:
用户需求说明书←————验收测试计划依据和验证————→验收测试
↓ ↓
软件需求规格说明书←——系统测试计划依据和验证——→系统测试
↓ ↓
系统设计/概要设计←—集成测试计划依据和验证—→集成测试
↓ ↓
模块设计/详细设计←单元测试计划依据和验证→单元测试
/ /
/---------↓ ↓--------/
软件编码
软件测试执行流程:
测试需求
↓
测试计划←-----+
↓ |
+→测试分析-------|进
回| ↓ |度
| 测试设计-------|跟
归| ↓ |踪
| 测试脚本-------|及
测| ↓ |调
| 测试实施-------|整
试| ↓ |
+---测试评估------+
↓
测试总结
测试计划:
制品:测试计划,包括测试策略,人力及资源分配,进度安排。评审记录。
强调:注意确定测试阶段,包括单元测试;集成测试;系统测试;验收测试。
测试分析、设计:
制品:测试用例,测试规程。评审记录。
强调:注意测试方案的制定。考虑因素:白盒测试(基本路径测试,条件测试,数据流测试,循环测试);灰盒测试;黑盒测试(等价划分,边界值分析,错误推测);功能性测试(功能测试,安全和访问控制测试,容量测试);可用性测试;可靠性测试(完整性测试,结构测试,强度测试);性能测试(基准测试,竞争能力测试,负载测试,性能分析工作);可支持性测试(配置测试,可安装测试);退化测试。
测试脚本:
制品:测试构件
工具:使用测试脚本框架,例如java测试方面的有JUnit,DbUnit,EasyMack,Cactus,StrutsTestCase等 。
测试实施:
强调: 执行 手工或自动 测试
工具:可以使用的测试工具,如Rational F unction al Test,JMeter, LoadRunner,WinRunner等。
测试评估:
制品:缺陷列表,测试报告。
工具:可以使用缺陷管理工具,如TestDirecor等。
测试总结:
强调:分析此次测试方法、工具、制品、流程,改进以后的测试工作过程。
参考内容:软件工程,IBM-RUP,CMMI,www.uml.org.cn