购买
下载掌阅APP,畅读海量书库
立即打开
畅读海量书库
扫码下载掌阅APP

1.4 基于风险的认知

因为没有办法证明软件是正确的,软件测试本身总是具有一定的风险性,所以软件测试被认为是对软件系统中潜在的各种风险进行评估的活动。从风险的观点看,软件测试就是对软件产品质量风险的不断评估,引导软件开发工作,进而将最终发布的软件所存在的风险降到最低。基于风险的软件测试认知主要体现在两点上:

·软件测试不仅仅停留在单个缺陷上,要从所发现的问题看到(分析出)某类质量风险或某个具有潜在风险的区域。

·软件测试被看作是一个动态的质量监控过程,对软件开发全过程进行检测,随时发现不健康的征兆,及时评估新的风险,设置新的监控基准,不断地持续下去。

基于风险对测试的认知,会强调测试的持续性,持续地进行测试,写几行代码就要做测试、实现一个功能就要对这个功能进行测试,开发和测试相伴而行。这种认知特别适合敏捷开发模式下的测试——敏捷测试。在敏捷开发中, 软件测试就能被解释为对软件产品质量的持续评估。 在敏捷方法中,不仅提倡持续集成,而且提倡持续测试,持续集成实际上也是为了持续测试。

基于风险对测试的认知还不断提醒我们:在尽力做好测试工作的前提下,工作有所侧重,在风险和开发周期限制上获得平衡。首先评估测试的风险,每个功能出问题的概率有多大?根据Pareto原则(也叫80/20原则),哪些功能是用户最常用的20%功能?如果某个功能有问题,其对用户的影响又有多大?然后根据风险大小确定测试的优先级。优先级高的功能特性,测试优先得到执行。一般来讲,针对用户最常用的20%功能(优先级高)的测试会得到完全地、充分地执行,而低优先级功能的测试(另外用户不常用的80%功能)就可能由于时间或经费的限制,测试的要求降低、减少测试工作量。 r3vkcIvfX0cj4Md8RKFugnjwmIsbr9g3XefYCibAeUehwZ+Q3F6D0SF/B6CIR0n8

点击中间区域
呼出菜单
上一章
目录
下一章
×