第四讲动态黑盒测试
合集下载
相关主题
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
有句话:按照傻子的操作能测试出更多的缺陷
2018/10/13
12
测试方案技术-状态测试
因果图法
等价类法与边缘值分析法的缺点是没有检查各种输入条件 的组合。 因果图法则着重分析输入条件的各种组合,每种组合条件 就是“因”,它必然有一个输出的结果,这就是“果”。
2018/10/13
13
测试方案技术:状态测试
2018/10/13
37
用户手册测试:测试的内容
安装 其他文档 (README等) 使用方便 遗漏的特征部分 功能兼容性
2018/10/13
38
测试文档:在线帮助
可用性 恰当 正确性 完整 链接 控制
2018/10/13
39
2018/10/13
30
强度测试
也叫负载测试 测试软件在极限状态下的工作负载 巨大的数据容量 反复的操作 对软件扩展周期的操作: 持久性测试
2018/10/13
31
破坏性测试
称为错误测试 产品应该
检测、诊断和控制意外情况 纠正意外情况可能发生的地方 报告意外的情况 恢复原状
软件状态
软件当前所处的情况或者模式
状态的测试
通过不同的状态验证程序的逻辑流程
状态的一般流程
初始状态 根据菜单、功能带来的状态变化:比如 外观、操作、菜单
旧状态 流程控制 数据转换 变量设置 新状态
2018/10/13
14
测试逻辑流程
测试的方法:
运用等价分配的原则选择状态和分支 不可能作到完全测试
2018/10/13
7
测试方案技术:数据测试
边界条件类型
边界条件是指操作界限的边缘值。 可能数据类型
数值、字符、位置、数量 速度、地址、尺寸
可能产生的边界情况
第一/最后 最小/最大,最慢/最快,最高/最低 开始/完成 超过/在内
2018/10/13
8
测试方案技术:数据测试
测试边界
2018/10/13 5
测试方案技术:数据测试
软件的组成:数据和程序代码
数据包括键盘、鼠标、磁盘文件、打印等输入和输出 程序指可执行的流程、转换、逻辑和运算
数据的测试
检查用户输入的信息、返回的结果、中间计算结果是否符合要 求
数据的类别
字符、数字、图形图象、多媒体数据等
数据的测试技术主要有
测试方案技术:等价分类法
等价分配是指分步骤地把过多的测试用例减小到同样 有效的小范围的过程,也就是作出等价区间。 等价区间是指测试相同目标或者暴露相同软件缺陷的 一组测试用例。 在寻找等价区间时,把相似的输入、输出、操作分成 组,形成等价区间。
2018/10/13
4
测试方案技术:等价分类法举例
2018/10/13
32
考虑破坏性
大部分软件的绝大多数灾难性失败都是数据的丢 失或崩溃 应该向黑客一样考虑,特别是在测试安全问题的 时候 破坏性测试通常没有结构化,但是应该记录下测 试的过程 一定要有创造性 如果成功,要考虑后果是什么
2018/10/13 33
用户手册测试
安装 文档 在线帮助
2018/10/13
22
黑盒测试的应用举例
安装测试 最初的验收测试 用户界面测试 验证活动: 功能测试 验证活动: 系统测试 最终验收测试 基准化
2018/10/13 23
系统测试的种类
功能测试 边界和限定测试 强度测试 破坏性测试 容量测试
2018/10/13
黑盒测试
测试者看不到代码 称为功能测试 由测试组做 关注发生了什么,而不是怎么发生的 用户界面变的非常重要 测试工作分三步:输入、输出、检验结果
2018/10/13
1
测试用例的形成
根据设计文件和产品说明书确定对测试对象的输 入和输出 根据输入和输出定义测试用例 根据测试用例,在软件运行的状态下测试软件的 程序 测试用例很重要,举例
文件名的测试
内边界是1-255个有效字符 有效字符,不包括非法字符:/ 、 : * ? “ 《 》 ! 等价区间有合法字符、非法字符、合法长度的字符、过长名称、 过短名称。
数据范围
范围是1~999,我们可以划分三类:x<1,等价分类法是将输 入数据的可能值分成若干“等价类”,每一类以一个代表性的 测试数据进行测试,这个数据就等价于这一类中的其它数据。 该法的关键在于如何将输入数据分类。 输入的数据1<=x<999,x>=999, x<1
分支太多 面向对象技术中的状态变化复杂 程序的选择和选项太多,相互的分支和状态组合很多
2018/10/13
15
1.建立状态转换图
状态转换图的建立
面向对象的测试技术 可以利用面向对象的状态图,也可以利用简单的方框+箭头 图 状态图包括以下一些项目
软件可能进入的每一种独立状态 从一种状态转入另一种状态所须的输入和条件 进入或者退出某种状态时的设置条件及输出结果
重负测试:让软件工作在尽可能大的负载下
处理尽可能大的数据文件 尽可能大的通信容量 尽可能多的进程 尽可能长的运行时间
2018/10/13 21
测试方案技术:凭借经验、直觉和预感
错误推测法
通过经验或直觉推测程序中可能存在的各种错误,从而有 针对性设计测试用例。 使用常见错误清单、判定表等
2018/10/13
16
2.状态测试的原则
每种状态至少访问一次 测试最常见最普遍的状态转换 测试状态之间最不常用的分支 测试所有错误状态及其返回值 测试随机状态转换
2018/10/13
17
3.测试状态
设计测试用例,检查所 有的状态变量
与进入和退出状态相关 的静态条件、信息、值、 功能等 比如(状态可以可选和 预定义)
边界条件 次边界条件 空值和无效数据
2018/10/13 6
测试方案技术:数据测试
边界条件(边缘值)分析法
用边缘特殊值测试。 经验表明:程序往往在边缘情况时犯错误,故测试边缘情 况比较有效。 例如:输入数据的值的范围是:-1.0至1.0,则可选-1.0, 1.0,-1.001,1.001等数据作为测试数据。
SYSDATE等 数值的的空值
测试方式
定义这些区间,测试是否有正确的反馈或处理
2018/10/13
11
测试方案技术:数据测试
破坏性测试
利用非法和错误的数据验证软件,看是否失败 原因
用户的使用千奇百怪 用户的意外操作不可预测
测试方式
对正确的数据做逆向思维,看石油有正确的反馈或处理
2018/10/13
34
用户手册测试:安装
安装产品和选项 卸载一个产品和选项 重新安装一个产品和选项 升级安装
2Hale Waihona Puke Baidu18/10/13
35
用户手册测试:测试文档
评审 检查 走查和预排 正确、完整、风格等
2018/10/13
36
用户手册测试:测试文档
保留一份测试人员的注释 对于新的测试人员可以从注释位置开始测试 手册可以是面向任务的,也可以是面向特征功能
2018/10/13
27
单一缺陷假设
有关可靠性的单一缺陷假设是: 失败很少是由两个或两个以上的缺陷同时造成的
2018/10/13
28
边界/限定测试
边界值的测试 鲁棒(健壮)性测试 最坏情况测试 鲁棒性和最坏情况同时测试
详细《
2018/10/13
29
边界测试的局限性
不需要太多的考虑 可能会遗漏内在的边界 通常假设变量是独立的 边界上的值可能没有任何意义
24
系统测试种类
兼容性 可用性 可靠性 文档
2018/10/13
25
功能测试
一个确认的活动
检验软件的特征或功能是否按照产品要求、规格说明 和合理的用户期望来运行
2018/10/13
26
边界/限定测试
测试数值、大小、或者数量是否靠近设计的限定 数值限定(Value limits) 长度限定(Length limits) 容量限定(Volume limits) 测试输入靠近极限数值时,越可能发生错误 测试当超出边界时,软件该如何反应
并发或者时序错乱 重复、压迫和重负
2018/10/13
19
并发或者时序错乱的测试举例
两个不同的程序同时打开或保存同一个文档 共享同一台打印机、通信端口或者其他外围设备 当软件处于读取或者修改状态时,按键或者单击鼠标 同时关闭或者启动软件的多个实例 同时使用不同的程序访问一个共同的数据库
提出边界条件时一定要测试临近边界的合法数据:最后一 个可能合法的数据,刚超过边界的非法数据 测试方式
按照步长增加或减少:X+STEP OR X-STEP。
例如:文件名的测试
边界是1-255个有效字符 测试用例边界输入项:1 和255 测试用例边界临界输入项:0 和254, 256
测试所有的边界,有助于发现更多的边界
2018/10/13
2
测试的思路
“通过”测试
检测软件的基本功能和正常的功能是否完全具备 并不是通过就达到要求
“失败”测试
通过破坏性的测试发现潜在的缺陷 逆向思维,目的是在软件发布之前,有机会搞跨软件, 攻击软件的薄弱环节 不仅仅只是在破坏设计者设计的错误信息
2018/10/13 3
2018/10/13 9
测试方案技术:数据测试
内部边界
隐含在软件内部的边界条件 例如:计算机的二进制带来的内部进位边界
16,255,1024等
测试方式
分析内边界,测试边界值和临界值。
2018/10/13
10
测试方案技术:数据测试
默认 空白 空值 零
建立这些等价区间 例如:日期的的默认值
2018/10/13
20
重复、压迫和重负
测试目标是:处理程序员没有想到恶劣条件下产生的问 题的能力
重复测试:不断执行同样的操作
反复读写数据,选择同一个操作 测试内存是否足够,经常出现程序的内存分配没有回收
压迫测试:软件在不够理想的条件下运行
内存小,磁盘空间少,CPU速度慢等 测试软件对外部资源的要求和依赖的程度 将支持降到最低限度,这是性能的边界条件测试
窗口外观 窗口尺寸被设置为上一 次使用的尺寸 绘画区域空白 显示工具栏、颜色栏和 状态条 铅笔工具被选中,而其 他所有工具均未选中 默认颜色是黑色前景 文档名称是untiled
2018/10/13
18
失败状态测试
失败测试是通过测试的相反做法,做法是测试用例目 的是为了损害系统的特定功能。 主要测试的项目有