循环测试方法及白盒测试小结(第4章小结)
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
课题:循环测试方法及白盒测试小结(第4章小结)
课型:新授课
教学内容:
1.循环测试方法
2.白盒测试小结
教学目标:(思想、知识、能力)
1.掌握循环测试方法、策略
2.进一步理解白盒测试的综合运用
3.进一步提高测试技巧、能力
教学重点、难点:
循环测试方法的使用
教法、学法:讲演辅结合(以幻灯片讲解、举例、课堂练习)教学程序
课堂导入
一. 复习提问(复习基本路径测试方法)
1.基本路径测试思想?
2.基本路径测试设计用例步骤?
3.什么是环形复杂度?
二.新知
1.循环测试方法
注意:以幻灯片进行讲解,以例题驱动,增加课堂提问。
主要知识:
(1)循环测试基本方法
A、简单循环。设循环最大次数为n
跳过整个循环只循环一次
循环两次 循环m 次 m 测试从最内层开始,将其他循环设置为最小值,内层循环则按照简单循环测试方法进行测试。 对最内层循环使用简单循环,而使外层循环的迭代参数(循环计数)最小,并为范围外或排除的值增加其他测试 由内向外构造下几个循环的测试,但其他的外层循环为最小值。 串接循环,分别独立测试 (2)Z 路径覆盖下的循环测试方法 简化循环路径及次数:简化后的循环测试只考虑执行循环体一次和零次(不执行)两种情况。 2. 白盒测试小结 (1)、逻辑覆盖小结 选择足够的测试用例,使得判定中的每个条件的所有可能结果至少出现一次,并且每个判定本身的所有可能结果至少出现一次 判定-条件覆盖 选择足够的测试用例,使得判定中的每个条件的所有可能结果至少出现一次,但是判定表达式中的某些可能结果并未出现 条件覆 盖 由上至下逐渐增强 选择足够的测试用例,使得所有可能的结 果至少出现一次 判定覆盖 最弱的覆盖 选择足够的测试用例,使得每个语句至少执行一次 语句覆盖 举例: int result(int x,int y,int z) { int k=0,j=0; if ((x>y)&&(z>5)) k=x+y; if ((x==10)||(y>3)) j=x*y; return k+j; } 请分别写出语句覆盖、判定覆盖、条件覆盖、判定—条件覆盖、条件组合覆盖、路径覆盖的测试用例? 较强的覆盖,但是不能代替条件覆盖和条件组合覆 选择足够的测试用例,每个可能执行 到的路径至少经过一次 路径覆盖 最强的覆盖 选择足够的测试用例,使得判断中每个条件的所有可能结果的组合至少出现一次 条件组合覆盖 (3)、基本路径测试小结(案例分析) 阅读下列说明,回答问题1 至问题3,将解答填入答题纸的对应栏内。 【说明】 使用基本路径法设计出的测试用例能够保证程序的每一条可执行语句在测试过程中至少执行一次。以下代码由C 语言书写,请按要求回答问题。 Int IsLeap(int year) { if (year % 4 == 0) { if (year % 100 == 0) { if ( year % 400 == 0) leap = 1; else leap = 0; } else leap = 1; } else leap = 0; return leap; }【问题1】(3 分) 请画出以上代码的控制流图 【问题2】(4 分) 请计算上述控制流图的圈复杂度V(G)(独立线性路径数) 【问题3】(8 分) 假设输入的取值范围是1000 < year < 2001,请使用基本路径测试法为变量year 设计测试用例,使其满足基本路径覆盖的要求。 三.小结: 1、循环测试方法策略 2、白盒测试案例分析 3、课堂练习及处理 作业布置: 课本习题105面第3题(交电子文档)