56、软件测试、数据保护、代码审查与静态检查全解析

软件测试、数据保护、代码审查与静态检查全解析

1. 测试的目的与策略

1.1 测试的两种动机

测试主要有两个截然不同的目的:消除软件中的错误,以及确认软件没有错误。这两种动机决定了测试的方式和时长。

1.1.1 以修复错误为目的的测试(面向调试的测试)

这是最常见的测试动机,即通过测试找出并修复软件中的错误。测试过程通常是运行一组测试用例,记录发现的错误,修复这些错误,然后再进行更多测试。理想情况下,会有合理的黑盒和白盒测试,常见形式为回归测试套件。探索性测试可用于在黑盒和白盒测试之外进一步检查系统,以发现更多缺陷。

当发现缺陷时,应修复该缺陷,并确保修复有效且未引入新问题,然后继续测试,直到时间耗尽或达到特定的退出标准。常见的退出标准包括:
- 测试时间用完,但仅以此为唯一标准并非最佳选择。
- 达到了覆盖目标,例如对需求进行 100% 的黑盒测试,对代码分支进行 95% 的白盒测试。
- 无法再找到更多错误,或者继续查找错误的成本效益不高。例如,在过去两周的测试中未发现高优先级错误,且在过去一周未发现中优先级错误。
- 满足软件质量的验收测试标准,如系统在重负载下连续运行两周无崩溃。

如果软件存在大量错误,且测试时间有限,仅使用探索性测试可能是减少错误数量的最有效方法。

1.1.2 以验证开发过程质量为目的的测试

对于高质量软件,仅通过测试找出并修复错误是不够的,因为测试只能发现一部分错误,很难通过测试找出所有残留错误。此时,应将测试视为验证开发过程质量的手段。

可以将测试与经典科学方法进行类比:

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值