四、 软件测试阶段
概述
当产品开发完成后需要提交测试部门做测试,软件测试的目的就是为了发现程序中的错误,测试的对象不仅仅是程序测试,还应该包括整个软件开发期内各个阶段所产生的文档,如需求规格说明、概要设计文档、详细设计文档,当然软件测试的主要对象还是源程序。
主要工作
软件测试的主要工作是验证和确认。
- 验证:保证软件能否正确地实现一些特定功的能,确定软件生存周期中的一个特定阶段的产品是否达到前阶段确立的需求的过程。
- 确认:通过执行程序或人工分析功能判断软件是否存在问题。
测试类型有很多种,按开发过程的阶段可分为:单元测试、集成测试、确认测试、验收测试、系统测试,按实现角度可分为:黑盒测试、白盒测试等。
常见的问题
- 开发、维护人员缺少自测,自测比较重要,每完成一个功能都要进行单元测试和系统测试。
- 测试人员对业务理解不够,新产品提交测试后,需要经过一段时间的测试才能交付使用,如果测试人员对业务不了解,需要边熟悉产品边熟悉业务,就不能从深层次发现问题,只能达到黑盒测试的效果。
- 提前准备不足,产品测试周期一般不会太长,所以前期准备工作非常重要,怎样在开始测试就进入状态比较重要,前期准备工作主要包括业务知识培训、测试方法、重点测试功能等。
- 白盒测试的力度不够,测试人员对软件结构不了解,很少能从内部发现问题,“错误潜伏在角落里,聚集在边界上”,而白盒测试更可能发现它。
- 编制测试用例不全面,测试用例主要是快速、全面的测试并发现问题,所以定制一个好的测试用例非常重要,也可以利用一些测试工具辅助测试。
- 性能效率方面也是重点测试的对象,尽量将这种问题提前发现,不要等产品交付使用后让客户提出来。
- 等等