软件理论基础(目的、原则、对象、风险)

一:软件测试经典定义:

是在规定的条件下对软件进行操作,以发现错误,对软件质量进行评估

二:测试等于调试吗?

测试可以发现由于软件缺陷引起的失效,而调试是一种开发活动,用来识别引起缺陷的原因,修改代码以及验证是否正确的修改了软件的缺陷

三:不同时期关于测试的定义

1.确信程序作了它应该做的事

2.为找出错误而运行程序或系统的过程

3.查出规格说明书中错误,以及与规格说明不符的地方

4.一切以评价程序或系统的属性、能力为目的的活动

5.对软件质量的度量

6.评价程序或系统的过程

7.验证系统满足需求,或确定实际结果与预期结果之间的区别

8.确认程序正确实现了所要求的功能

9.测试是与软件开发或维护工作并行进行的一个过程

10.是在用户需求和开发技术之间找一个平衡点

四:软件测试的目的

1)验证软件是否满足软件开发合同或项目开发计划、系统设计文档、软件需求规格说明、软件设计说明和软件产品说明等规定的软件质量要求;

2)通过测试,发现软件缺陷

3)为软件产品的质量测量和评价提供依据

五:软件测试原则

基于测试是为了寻找软件的错误与缺陷,评估与提高软件质量,因此我们提出一组测试原则

1)所有的软件测试都应追溯到用户需求(业务逻辑需求、输入输入数据一致性需求、界面性需求、性能需求、安全性需求)

2)应当把“尽早的和不断地进行软件测试”作为软件测绘师者的座右铭(尽早、尽快、持续,先找大问题,不要过于纠结小问题)

3)完全测试是不可能的(初涉软件测试人员希望拿到软件后就进行完全的测试,找出所有的软件错误,并使软件趋于完美。想法非常好,但是实现它是不可能的,哪怕是最简单的程序,主要原因有4个(测试数据输入量太大、输出结果太多、软件的操作步骤太多、软件说明书是主观的。可以说从旁观者来看是缺陷))

4)测试无法显示软件潜在的缺陷

5)充分注意测试中的群集现象(缺陷扎堆,总出现问题的模块,应重点关注,重点测试,多次回归)

6)程序员应避免检查自己的程序(每个岗位职责分开;易陷入程序,而非业务逻辑;自己编写的,很难客观评价;思维定势)

7)尽量避免测试的随意性

六:杀虫剂怪事

为了克服杀虫剂怪事,软件测试员必须不断编写不同的、新的测试程序,对程序的不同部分进行测试,易找出更多软件缺陷。

七:软件测试的对象

根据软件的定义,软件包括程序、数据、文档,所以软件测试并不仅仅是程序测试。软件测试贯穿于整个软件生命周期中

由于在整个软件生命周期中,各阶段有不同的测试对象,形成了不同开发阶段的不同类型的测试。需求分析、概要设计、详细设计以及程序编码等各阶段产生的文档,包括需求规格说明、概要设计规格说明、详细设计规格说明以及源程序,都应作为“软件测试”的对象

八:软件测试风险

软件测试中的软件风险分析是根据预测软件将出现的风险,制定软件测试计划并排列优先等级,风险分析是对软件中潜在的问题进行识别、估计和评价的过程

风险也包括进度风险、质量风险、人员风险、变更风险、成本风险等

九:软件测试工程师的职责

1)编写测试计划

2)编写测试用例

3)配置测试环境

4)执行软件测试

5)报告软件缺陷

6)更新缺陷报告内容

7)验证修正的缺陷

8)报告测试状态

9)完成测试相关的其它任务

原文地址:https://www.cnblogs.com/d-h-z/p/13231223.html