第二章软件测试基础笔记

一、软件测试基础 00:00

1. 软件测试的基本概念 01:49

1)软件测试定义的发展 02:06

l 证真阶段:早期定义(上世纪)认为软件测试是为了证明软件没有错误,即 "证明软件是真的"

l 证伪阶段:发展为证明软件虽然存在错误但可以正常运行,核心目的是发现软件中的错误

l 质量阶段:最新定义强调测试最终目的是保证软件质量,发现错误只是手段而非最终目标

2)软件测试的目的 04:01

l 核心目的:保证软件质量,而不仅是发现错误

l 具体目标:

o  符合法律法规和技术标准

o  降低产品风险和应用风险

o  满足需求规格说明书要求

l 注意点:符合应用需求不是唯一目的,还需考虑法规符合性、商务要求等外部因素

3)软件测试的对象 05:17

l 基本对象:软件本身,包含程序、数据和文档三部分l 环境因素:

o  需要运行环境和测试环境支持(硬件/软件/网络/数据环境)

o  环境会影响测试结果但不是测试对象本身

l 实施要点:

o  明确测试对象边界(程序/数据/文档)

o  认识环境对测试结果的影响

4)验证和确认 07:30

l 验证(Verification):

o  判断是否按需求规格正确构造软件

o  依据:需求规格说明书

o  关注"是否正确地做事"

l 确认(Validation):

o  检验软件是否满足用户真实需求

o  依据:用户原始需求

o  关注"是否做了正确的事"

l 关键差异:需求规格书可能未完整反映用户真实需求,导致通过验证但未通过确认

l 现实表现:软件频繁更新的主要原因就是确认不足

5)软误、缺陷、故障和失效 10:08

l 软件错误、缺陷、故障与失效的定义 10:14

o  软件错误:生命周期中不希望出现的人为错误(如程序员编码错误)

o  软件缺陷:软件中存在的不可接受偏差(由错误导致)

o  软件故障:运行时出现的不可接受内部状态

o  软件失效:运行时表现出的不可接受外部行为

l 软件错误导致软件缺陷的例子 10:49

o  典型示例:程序员将判断语句if(a==b)误写为if(a=b),导致:

n 错误:人为编码错误(少写一个等号)

n 缺陷:程序逻辑偏差(判断变赋值)

n 可能引发故障:程序执行错误分支

n 最终失效:系统产生错误输出或崩溃

l 软件缺陷与软件故障的关系 11:50

o  触发关系:缺陷可能导致故障,但不必然导致

o  示例说明 :if(a=b)缺陷在特定条件下(a不等于b时)才会引发故障

l 软件              析和设计阶段引入缺陷的比例 12:44

o  需求阶段 :>40%(最大比例)

o  设计阶段 :>30%

o  编码阶段 :<30%

o  关键结论:非编码阶段引入的缺陷占比超过70%

l 缺陷发现与修复代价的关系 13:14

o  时间代价:缺陷从产生到发现的时间间隔越短,修复代价越小

o  增长规律:跨阶段未发现的缺陷修复代价呈指数级增长

o  典型案例:需求阶段错误延续到测试阶段才被发现,需重做需求/设计/编码

l 测试要尽早进行的原则 13:53

o  基本原则:缺陷早发现早排除

o  实施方式:

n 测试贯穿软件工程全生命周期

n 需求/设计阶段进行静态测试(文档审查等)

n 避免仅编码后测试的传统做法

o  行业现状:许多企业仍停留在编码后黑盒测试阶段,不符合最佳实践

6)软件质量的定义 14:55

l 核心概念:在规定条件下使用时,软件产品满足明确或隐含要求的能力。强调 "规定条件"是前提,如操作系统环境等。

l 与测试的关系:软件质量包含软件测试,测试只是保证质量的措施之一,还可采用其他手段。测试概

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值