文章目录
1、软件测试的目的和原则
目的:验证软件有或没有问题。
原则:以客户为中心,遵循软件测试的规范、流程、标准和要求。
2、什么是需求
IEEE定义:软件需求是 (1)用户解决问题或达到目标所需条件或权能(Capability)。 (2)系统或系统部件要满足合同、标准、规范或其它正式规定文档所需具有的条件或权能。 (3)一种反映上面(1)或(2)所述条件或权能的文档说明。它包括功能性需求及非功能性需求,非功能性需求对设计和实现提出了限制,比如性能要求,质量标准,或者设计限制。
在多数软件公司,会有两部分需求,一部分是用户需求,一部分是软件需求。
用户需求:可以简单理解为甲方提出的需求,如果没有甲方,那么就是终端用户使用产品时必须要完成的任务。该需求一般比较简略。
软件需求:或者叫功能需求,该需求会详细描述开发人员必须实现的软件功能。软件需求是测试人员进行测试工作的基本依据。
3、什么是bug
(1)当且仅当规格说明是存在的并且正确,程序与规格说明之间的不匹配才是错误。
(2)当没有需求规格说明书时,当程序没有实现其最终用户合理预期的功能要求时,就是软件错误。
4、什么是测试用例
(1)测试用例是为了实施测试而向被测试的系统提供的一组集合,这组集合包含:测试环境、操作步骤、测试数据、预期结果、标题(测试点)、重要性、测试方法、功能模块、优先级。
(2)测试过程中可能会遇到以下问题:
–不知道是否较全面的测试了所有功能
–测试的覆盖率无法衡量
–对新版本的重复测试很难实施
–存在大量冗余测试影响测试效率。
测试用例的产生就是为了解决上述的问题。
5、开发模型
5.1 软件的生命周期
软件生命周期是指从软件产品的设想开始到软件不再使用而结束的时间。 如果把软件看成是有生命的事物,那么软件的生命周期可以分成6个阶段,即需求分析、计划、设计、编码、测试、运行维护。