管 理 信 息 系 统 (7).ppt

  1. 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
  2. 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  3. 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
例7-2 白盒测试例 下图描述的是一个要进行测试的某功能模块的流程结构。 a Yes x3 或 y0 开始 o x1 且 y2 输出“C” d No 结束 e c No 输出“A” b Yes 其相应的C语言代码为: void test( int x, int y ) { if (x1 y2) { if (x3 || y0) printf (“A”) ; } else printf (“C”) ; } a.语句覆盖 语句覆盖是一个比较弱的测试标准,是最起码的结构覆盖要求,它要求选择足够多的测试用例,使程序中每个语句都至少被执行一次。 a.语句覆盖(例) x y 路径 用例1 0 3 ode 用例2 4 0 oabe a Yes x3 或 y0 开始 o x1 且 y2 输出“C” d No 结束 e c No 输出“A” b Yes a.语句覆盖(续) 语句覆盖只保证通过给定的测试用例测试了每个语句的运行正确性,但并不能保证对所有可能的输入、输出满足设计逻辑。 因此,一般认为,语句覆盖是一种很不充分的覆盖标准。 b.判定覆盖 判定覆盖又称为分支覆盖,它要求设计足够多的测试用例,使得处理逻辑中中每个判定至少有一次为“真”,有一次为“假”,即:处理逻辑中的每个判定分支至少遍历一次。 b.判定覆盖(例) x y 路径 用例1 5 -1 oabe 用例2 3 1 oace 用例3 3 3 ode a Yes x3 或 y0 开始 o x1 且 y2 输出“C” d No 结束 e c No 输出“A” b Yes b.判定覆盖(续) 判定覆盖基于应用逻辑的结构确定测试用例,比语句覆盖更具可理解性和逻辑性,具有更强的测试能力。 但判定覆盖不细分每个判定就得到测试用例,可能会遗漏部分测试路径。 一般认为,判定覆盖是一种比语句覆盖稍强的覆盖标准。 c.条件覆盖 条件覆盖要求构造一组测试用例,使得处理逻辑中每个判定中的每个逻辑条件的可能值至少满足一次,即每个条件至少有一次为真值,有一次为假值。 c.条件覆盖(续) 在这个例子中在“o”点和“a”点共有两个判定。 需要设计足够的用例使得输入在“o”点出现条件x1、x≤1、y2、y≥2的情况,在“a”点处出现x3、x≤3、y0及y≥0的情况。 c.条件覆盖(例) x y 路径 用例1 4 -1 oabe 用例2 0 3 ode a Yes x3 或 y0 开始 o x1 且 y2 输出“C” d No 结束 e c No 输出“A” b Yes c.条件覆盖(续) 要达到条件覆盖,需要足够多的测试用例,但条件覆盖并不能保证判定覆盖。条件覆盖只能保证每个逻辑条件的可能值至少有一次为真,而不考虑所有的判定结果。 d.判定/条件覆盖 判定/条件覆盖就是设计足够的测试用例,使得判断中每个条件的所有可能的逻辑取值至少遍历一次,同时每个判断的所有可能判定结果也至少遍历一次。 d.判定/条件覆盖例 x y 路径 用例1 4 -1 oabe 用例2 2 0 oace 用例3 0 3 ode a Yes x3 或 y0 开始 o x1 且 y2 输出“C” d No 结束 e c No 输出“A” b Yes d.判定/条件覆盖(续) 判定/条件覆盖满足判定覆盖准则和条件覆盖准则,弥补了二者的不足。 但它没有考虑条件的组合情况。 例如,如果“与”表达式中有个条件为“假”,那么就无须计算该表达式中的后续条件。同样,如果“或”表达式中有个条件为“真”,那么后续条件也无须计算。因此,判定/条件覆盖不一定会发现逻辑表达式中的错误。 e.条件组合覆盖 条件组合覆盖要求设计足够多的测试用例,使得处理逻辑中每个判定中条件结果的所有可能组合至少出现一次。 e.条件组合覆盖 条件组合覆盖要求设计足够多的测试用例,使得处理逻辑中每个判定中条件结果的所有可能组合至少出现一次。 e.条件组合覆盖(续) 满足条件组合覆盖准则必然满足判定覆盖准则、条件覆盖准则及判定/条件覆盖准则。 它的缺点是增加了测试用例的数量。 e.条件组合覆盖(续) 对图7-7给出的处理过程,测试用例必须覆盖以下8种组合: ① a1,b2 ② a1,b=2 ③ a=1,b2 ④ a=1,b=2 e.条件组合覆盖(续) ⑤ 在保证①的前提下同时满足:a3,b0,即满足a3,b0。 ⑥ 在保证①的前提下同时满足

文档评论(0)

132****9295 + 关注
实名认证
内容提供者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档