一、引论
1、为什么要进行软件测试?
- 软件总存在缺陷。只有通过测试,才可以发现软件缺陷。也只有发现了缺陷,才可以将软件缺陷从软件产品或软件系统中清理出去。
- 软件中存在的缺陷给我们带来的损失是巨大的,这也说明了软件测试的必要性和重要性。
- 测试是所有工程学科的基本组成单元,自然也是软件开发的重要组成部分。
- 测试人员水平越高,找到软件问题的时间就越早,软件就越容易更正,产品发布之后越稳定。
2、软件测试的定义:软件测试是由“验证”和“有效性确认”活动构成的整体。
“验证”是检验软件是否已正确地实现了产品规格书所定义的系统功能和特性
“有效性确认”是确认所开发的软件是否满足用户真正需求的活动
3、 软件测试的价值
- 全面评估产品质量,获得有关产品质量的全面、客观的信息
- 发现问题,督促问题解决,提高产品质量
- 持续提供质量反馈、及时揭示质量风险,有助于控制项目风险,提高构建的质量
- 通过缺陷分析,获得缺陷模式,有助于缺陷预防
二、软件测试基本概念
2.1 软件缺陷
2.1.1 软件缺陷的定义:
任何程序、系统中的问题,和产品设计书的不一致性,不能满足用户的需求
2.1.2 软件缺陷的现象
- 功能、特性没有实现或部分实现
- 设计不合理,存在缺陷
- 实际结果和预期结果不一致
- 运行出错,包括运行中断、系统崩溃、界面混乱
- 数据结果不正确、精度不够
- 用户不能接受的其它问题,如存取时间过长、界面不美观
2.1.3 软件缺陷的产生
①技术问题
算法错误,语法错误,计算和精度问题,接口参数传递不匹配
②团队工作
沟通不充分,