《软件测试-黑盒测试与白盒测试ppt课件.ppt》由会员分享,可在线阅读,更多相关《软件测试-黑盒测试与白盒测试ppt课件.ppt(36页珍藏版)》请在taowenge.com淘文阁网|工程机械CAD图纸|机械工程制图|CAD装配图下载|SolidWorks_CaTia_CAD_UG_PROE_设计图分享下载上搜索。
1、严格执行突发事件上报制度、校外活动报批制度等相关规章制度。做到及时发现、制止、汇报并处理各类违纪行为或突发事件。白盒与黑盒的概念 黑盒测试技术 白盒测试技术 白盒与黑盒的比较 严格执行突发事件上报制度、校外活动报批制度等相关规章制度。做到及时发现、制止、汇报并处理各类违纪行为或突发事件。黑盒与白盒 X=2 Y=4?黑盒测试又叫功能测试,它关注的是被测软件功能的实现,而不是内部逻辑。在黑盒测试中,被测对象的内部结构、运作情况对测试人员是不可见的。黑盒测试黑盒测试 黑盒测试关注点:功能错误与遗漏 界面错误 数据结构与外部数据库访问错误 性能错误 初始化与终止错误 严格执行突发事件上报制度、校外活动
2、报批制度等相关规章制度。做到及时发现、制止、汇报并处理各类违纪行为或突发事件。黑盒与白盒 白盒测试又叫玻璃盒测试、透明盒测试、结构化测试、基于代码的测试等。白盒测试需要对系统内部的结构和工作原理有一个清楚的了解。白盒测试白盒测试 白盒测试关注逻辑细节 关于控制流和数据流无意识的假设很可能造成错误 笔误是随机的 Beizer:“错误潜伏在角落里,聚集在边界上,而白盒测试更可能发现它。错误潜伏在角落里,聚集在边界上,而白盒测试更可能发现它。”X=2 Y=2X Y=4?严格执行突发事件上报制度、校外活动报批制度等相关规章制度。做到及时发现、制止、汇报并处理各类违纪行为或突发事件。黑盒测试技术 X=2
3、 Y=4?等价类技术等价类技术 等价类划分不考虑程序的内部结构,只是根据软件的需求说明对输入的范围进行细分,然后再从分出的每个区域内选取一个有代表性的测试数据。例如:一程序,功能是计算两个 1-100整数的和(两个数由用户键盘输入)。试设计等价类。严格执行突发事件上报制度、校外活动报批制度等相关规章制度。做到及时发现、制止、汇报并处理各类违纪行为或突发事件。黑盒测试技术 X=2 Y=4?等价类技术等价类技术 无效等价类 100 加数 数值 非数值 整数 小数 100 字母 特殊字符 空格 空白 严格执行突发事件上报制度、校外活动报批制度等相关规章制度。做到及时发现、制止、汇报并处理各类违纪行为
4、或突发事件。黑盒测试技术 X=2 Y=4?等价类技术等价类技术 严格执行突发事件上报制度、校外活动报批制度等相关规章制度。做到及时发现、制止、汇报并处理各类违纪行为或突发事件。黑盒测试技术 X=2 Y=4?等价类方法小结等价类方法小结 等价类的定义 等价类、有效等价类、无效等价类。划分步骤 先考虑数据类型,再考虑数据范围。画示意图,区分等价类并编号 从一个等价类中选举一组测试数据构造测试用例 严格执行突发事件上报制度、校外活动报批制度等相关规章制度。做到及时发现、制止、汇报并处理各类违纪行为或突发事件。黑盒测试技术 X=2 Y=4?等价类方法小结等价类方法小结 常用的等价类划分方法 规定了输入
5、值的范围,可分为 1个有效类和两个无效类 如果输入是布尔表达式,可分为 1个有效类和1个无效类 如果规定了输入数据是一组值,而且程序对不同的输入值有不同的处理,则每个允许的输入值是一个有效等价类,此外还有一个无效等价类。如果规定了输入数据必须遵循的规则,可以划分出一个有效等价类和若干个无效等价类。严格执行突发事件上报制度、校外活动报批制度等相关规章制度。做到及时发现、制止、汇报并处理各类违纪行为或突发事件。黑盒测试技术 X=2 Y=4?边界值技术边界值技术 例如:一程序,功能是计算两个 1-100整数的和(两个数由用户键盘输入)。试设计等价类。边界值技术常和等价类结合使用,测试边界时,一般测试
6、边界值和正好超出边界值一个单位的值。严格执行突发事件上报制度、校外活动报批制度等相关规章制度。做到及时发现、制止、汇报并处理各类违纪行为或突发事件。黑盒测试技术 X=2 Y=4?因果图法因果图法 案例:某奖金计算软件实现如下功能:该软件可以计算某公司的年终奖,该公司员工分为普通员工和管理人员。员工表现分为普通、优秀和特殊贡献(普通与优秀员工都可以有特殊贡献,普通员工表现普通和管理人员表现普通拿的奖金是不同的。)根据员工分类和表现,奖金分为1类奖金,2类奖金 使用该软件时,输入员工的种类和表现,就会输出对应的奖金类别。请为该软件设计测试用例。严格执行突发事件上报制度、校外活动报批制度等相关规章制
7、度。做到及时发现、制止、汇报并处理各类违纪行为或突发事件。黑盒测试技术 X=2 Y=4?因果图法 分析:1、首先为输入输出条件编号 输入条件 员工类别:普通员工A1、管理人员A2 员工表现:普通B1、优秀B2、特殊贡献B3 输出条件 奖金类别:1类奖金C1、2类奖金C2 员工表现:严格执行突发事件上报制度、校外活动报批制度等相关规章制度。做到及时发现、制止、汇报并处理各类违纪行为或突发事件。黑盒测试技术 X=2 Y=4?因果图法因果图法 分析:2、分析各种有效的输入条件组合 普通员工 A1+B1-C1 A1+B2-C2 A1+B1+B3-C3 A1+B2+B3-C4 管理人员 A2+B1-C5
8、 A2+B2-C6 A2+B1+B3-C7 A2+B2+B3-B8 严格执行突发事件上报制度、校外活动报批制度等相关规章制度。做到及时发现、制止、汇报并处理各类违纪行为或突发事件。黑盒测试技术 X=2 Y=4?因果图法因果图法 分析:3、根据以上条件分析,编写测试用例。严格执行突发事件上报制度、校外活动报批制度等相关规章制度。做到及时发现、制止、汇报并处理各类违纪行为或突发事件。黑盒测试技术 X=2 Y=4?因果图因果图 因果图表现的是输入条件(原因)之间和以及输入条件与输出结果(结果)之间的对应关系。其中:CI表示原因,EI表示结果。严格执行突发事件上报制度、校外活动报批制度等相关规章制度。
9、做到及时发现、制止、汇报并处理各类违纪行为或突发事件。黑盒测试技术 X=2 Y=4?流程图法流程图法 算法流程图?业务流程图 针对整个系统业务功能流程绘制业务流程图,写用例,覆盖所有的路径分支。详细了解需求 根据需求说明或界面原型,找出各页面之间的流转关系 画出业务流程图 写用例,覆盖所有的路径分支。严格执行突发事件上报制度、校外活动报批制度等相关规章制度。做到及时发现、制止、汇报并处理各类违纪行为或突发事件。黑盒测试技术 X=2 Y=4?黑盒技术小结黑盒技术小结 运用流程图法测试软件的总体业务流程 针对具体的模块运用等价类与边界值方法进行测试 如果涉及到多个输入条件组合情况,应用因果图法测试
10、 流程图法 等价类法 边界值法 因果图法 严格执行突发事件上报制度、校外活动报批制度等相关规章制度。做到及时发现、制止、汇报并处理各类违纪行为或突发事件。黑盒测试技术 X=2 Y=4?综合应用综合应用 1、计算三角形面积程序 输入三个整数A、B、C,输出以A、B、C为三边的三角形面积(1=ABC100),结果保留2位小数。严格执行突发事件上报制度、校外活动报批制度等相关规章制度。做到及时发现、制止、汇报并处理各类违纪行为或突发事件。黑盒测试技术 X=2 Y=4?综合应用综合应用 2、163邮箱注册模块(不考虑重复用户)注册页面 严格执行突发事件上报制度、校外活动报批制度等相关规章制度。做到及时
11、发现、制止、汇报并处理各类违纪行为或突发事件。黑盒测试技术 X=2 Y=4?综合应用综合应用 测试用例 严格执行突发事件上报制度、校外活动报批制度等相关规章制度。做到及时发现、制止、汇报并处理各类违纪行为或突发事件。黑盒测试技术 X=2 Y=4?综合应用综合应用 严格执行突发事件上报制度、校外活动报批制度等相关规章制度。做到及时发现、制止、汇报并处理各类违纪行为或突发事件。黑盒测试技术 X=2 Y=4?课堂练习 1.一程序要求输入三角形的边长(要求整数),根据边长判断三角形类型(不等边、等边、等腰),请画出等价类示意图。2.假定一台ATM机允许提取的增量是 50元,总额从50到5000元不等的
12、现金;并要求一次最多取 2000元,一天最多取 5000元,一天最多取3次。运用等价类和边界值的思想编写测试用例。严格执行突发事件上报制度、校外活动报批制度等相关规章制度。做到及时发现、制止、汇报并处理各类违纪行为或突发事件。白盒测试技术 静态分析静态分析 代码走查(WorkThrough):开发组内部采用讲解、讨论和模拟运行的方式进行的查找错误的活动。X=2 Y=2X Y=4?代码审查(Inspection):在开发组内部进行的,采用讲解、提问和模拟运行的方式查找错误。一般有正式的计划、流程和结果报告。技术评审(Review):开发组、测试人员、QA等人员联合进行的通过讲解、提问并使用编码模
13、板进行错误查找的活动。一般有正式的流程和结果报告。严格执行突发事件上报制度、校外活动报批制度等相关规章制度。做到及时发现、制止、汇报并处理各类违纪行为或突发事件。白盒测试技术 边界值测试边界值测试 错误隐藏在角落,问题聚集在边界。边界值测试是一种普遍的方法,适用于黑盒与白盒。数据类型的边界值 X=2 Y=2X Y=4?#include main()int a=32765;int b=3;int c;c=a+b;c=c/2;printf(“%d”,c);严格执行突发事件上报制度、校外活动报批制度等相关规章制度。做到及时发现、制止、汇报并处理各类违纪行为或突发事件。白盒测试技术 边界值测试边界值测
14、试 数组的边界值 X=2 Y=2X Y=4?#include main()int a5;int i=0;for(i=0;i=5;i+)scanf(“%d”,&ai);/输入数组5个元素 for(i=1;i5;i+)printf(“%d”,ai);/打印数组5个元素 严格执行突发事件上报制度、校外活动报批制度等相关规章制度。做到及时发现、制止、汇报并处理各类违纪行为或突发事件。白盒测试技术 边界值测试边界值测试 X=2 Y=2X Y=4?#include main()int a,b,c;printf(“请输入两个10到99之间的整数”);scanf(“%d%d”,&a,&b);if(a=99)p
15、rintf(“a的值应在10到99之间”);else if(b=99)printf(“a的值应在10到99之间”);else c=a+b;printf(“两个数的和为%d”,c);分支判断语句的边界值 严格执行突发事件上报制度、校外活动报批制度等相关规章制度。做到及时发现、制止、汇报并处理各类违纪行为或突发事件。白盒测试技术 逻辑覆盖技术逻辑覆盖技术 逻辑覆盖是一种传统的白盒测试技术,是专门用来测试程序中的分支结构和循环结构。分支结构测试 X=2 Y=2X Y=4?语句覆盖 分支覆盖 条件覆盖 分支-条件覆盖 条件组合覆盖 路径覆盖 严格执行突发事件上报制度、校外活动报批制度等相关规章制度。做
16、到及时发现、制止、汇报并处理各类违纪行为或突发事件。白盒测试技术 逻辑覆盖技术逻辑覆盖技术 X=2 Y=2X Y=4?#include main()float a,b,x;scanf(“%f%f%f”,&a,&b,&x);if(a1)&(b=0)x=x/a;if(a=2)|(x1)x=x+1;printf(“%f”,x);入口(a1)&(b=0)(a=2)|(x1)返回 x=x/a x=x+1 Y Y s a b d c e 严格执行突发事件上报制度、校外活动报批制度等相关规章制度。做到及时发现、制止、汇报并处理各类违纪行为或突发事件。白盒测试技术 逻辑覆盖技术 循环结构测试 X=2 Y=2X
17、 Y=4?简单循环?循环变量的初值是否正确?循环变量的最大值是否正确?循环变量的增量是否正确?何时退出循环#include main()int i=0;int sum=0;while(i10)sum=sum+i;i+;printf(“%dn”,sum);请设计测试用例!严格执行突发事件上报制度、校外活动报批制度等相关规章制度。做到及时发现、制止、汇报并处理各类违纪行为或突发事件。白盒测试技术 逻辑覆盖技术 循环结构测试 X=2 Y=2X Y=4?嵌套循环?外内层循环变量都取最小值?外层最小,内层最大?外层最大,内层最小?循环变量增量?何时退出内循环?何时退出外循环#include main()
18、int i=0;int j=0;int a55;for(i=0;i5;i+)for(j=0;j5;j+)aij=i+j;printf(“%dn”,aij);请设计测试用例!严格执行突发事件上报制度、校外活动报批制度等相关规章制度。做到及时发现、制止、汇报并处理各类违纪行为或突发事件。白盒测试技术 面向对象测试面向对象测试 面向对象基本概念 X=2 Y=2X Y=4?类 子类 属性 方法 对象 封装 继承 多态 严格执行突发事件上报制度、校外活动报批制度等相关规章制度。做到及时发现、制止、汇报并处理各类违纪行为或突发事件。白盒测试技术 面向对象测试 面向对象的测试 X=2 Y=2X Y=4??面
19、向对象分析的测试?面向对象设计的测试?面向对象编码的测试 面向对象程序的单元测试?面向过程语言测函数?面向对象语言测类 严格执行突发事件上报制度、校外活动报批制度等相关规章制度。做到及时发现、制止、汇报并处理各类违纪行为或突发事件。白盒测试技术 面向对象测试 案例分析 X=2 Y=2X Y=4?/*形状类,实现该形状周长与面积计算*/public abstract class Shape public abstract double perimeter();public abstract double area();/*矩形类,实现该矩形周长与面积计算*/public class Rectan
20、gle extends Shape int a;int b;public Rectangle(int x,int y)a=x;b=y;public double perimeter()return 2*(a+b);public double area()return a*b /*正方形类,实现正方形周长与面积计算正方形类,实现正方形周长与面积计算*/public class Square extends Rectangle public Square(int x,int y)super(x,y);public double perimeter()return 4*a;public double
21、 area()return a*a /*圆形类,实现圆周长与面积计算*/public class Circle extends Shape private int r;public Circle(int x)r=x;public double perimeter()return 2*3.14*r;public double area()return 3.14*r*r;严格执行突发事件上报制度、校外活动报批制度等相关规章制度。做到及时发现、制止、汇报并处理各类违纪行为或突发事件。白盒测试技术 面向对象测试步骤面向对象测试步骤 划分优先级,适当取舍 X=2 Y=2X Y=4?类A 类D 类B 类C
22、 Shape类 Rectange 类 Circle 类 Square类 严格执行突发事件上报制度、校外活动报批制度等相关规章制度。做到及时发现、制止、汇报并处理各类违纪行为或突发事件。白盒测试技术 面向对象测试步骤面向对象测试步骤 对被测类进行静态分析 X=2 Y=2X Y=4?类结构是否合理 public、private、protect 关键字设置是否合理 检查类中成员变量和方法设置是否合理 检查程序是否符合相应的编码规范 严格执行突发事件上报制度、校外活动报批制度等相关规章制度。做到及时发现、制止、汇报并处理各类违纪行为或突发事件。白盒测试技术 面向对象测试步骤面向对象测试步骤 设计测试用
23、例 X=2 Y=2X Y=4?比如测试Rectangle 类时,可以构造以下测试用例:(1,1)(1.2,3.4)(a,b)(,)设计测试驱动程序/*矩形类,实现矩形周长和面积的计算*/public class Rectangle extends Shape public static void main(String args)/测试Rectangle 类 Rectangle rect1=new Rectangle(1,1);Rectangle rect2=new Rectangle(1.2,3.4);Rectangle rect1=new Rectangle(a,b);Rectangle
24、rect1=new Rectangle(,);System.out.println(rect1.perimeter();System.out.println(rect1.area();System.out.println(rect2.perimeter();System.out.println(rect2.area();System.out.println(rect3.perimeter();System.out.println(rect3.area();System.out.println(rect4.perimeter();System.out.println(rect4.area();严格执行突发事件上报制度、校外活动报批制度等相关规章制度。做到及时发现、制止、汇报并处理各类违纪行为或突发事件。测试技术 小结小结 黑盒测试技术 X=2 Y=2X Y=4?白盒测试技术