软件测试的维恩图

软件测试主要关注的是程序行为,在程序所有可能的行为中,一部分是规格说明所描述的行为(用集合S表示),一部分是程序最终实现的行为(用集合P表示),图1显示了二者之间存在的关系。在这个维恩图中,有些规定的程序行为并没有被实现,我们称之为“遗漏缺陷”;有些实现的行为并不是规格说明中规定的,我们称之为“过失缺陷”;只有集合S和P相交的部分是“正确”的,即所实现的期望行为。那么,测试就是确定按规定实现的程序行为范围的过程。

图1   程序的期望行为与实现行为之间的关系

测试是通过测试用例来引发程序行为的,测试用例对应的程序行为(用集合T表示)与上述行为之间的关系如图2所示,三者之间相叠交形成7个部分。其中,区域1是三个集合的交集,代表着测试用例所覆盖的已实现的规定行为;区域2表示测试用例未覆盖的但是已实现的规定行为;区域3表示测试用例所覆盖的已实现的未规定行为;区域4表示测试用例所覆盖的未实现的规定行为;区域5表示测试用例未覆盖的且未实现的规定行为;区域6表示测试用例未覆盖的已实现的未规定行为;区域7表示测试用例所覆盖的并未实现且未规定的行为。

图2   程序的期望行为、实现行为与测试行为之间的关系

在上述维恩图中,如果某些规定行为没有相应的测试用例,那么测试就是不完备的;如果有测试用例对应的是未规定的行为,有可能是测试用例设计得不恰当,或者规格说明不够充分,或者是测试人员故意为之以便确认那些规定不该发生的行为是否会发生。显然,测试人员应该想尽一切办法使所有行为集合的交集(即区域1)最大化,那么如何做到这一点呢?一个有效的路径就是利用测试方法来构造测试用例。

转载于:https://www.cnblogs.com/qiangliu/p/4329960.html

  • 0
    点赞
  • 0
    评论
  • 2
    收藏
  • 一键三连
    一键三连
  • 扫一扫,分享海报

表情包
插入表情
评论将由博主筛选后显示,对所有人可见 | 还能输入1000个字符
©️2021 CSDN 皮肤主题: 大白 设计师:CSDN官方博客 返回首页
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值