下载本文档
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
动态白盒测试技术动态白盒测试是指利用查看代码功能和实现方式得到的信息来确定哪些要测试,哪些不要测试,如何开展测试等。对白盒测试新的理解如下:在进行白盒测试之前是需要先设计黑盒测试案例,从整体功能上去把握每一个模块功能,避免只是检查代码,走入程序员的思路范围,而忽略对功能的整体把握。通过了解代码的细节,可消除冗余的测试皿,增加针对原先没有考虑到的区间的测试用例。查看代码,把软件分为数据和状态(程序流程),以黑盒测试用例的角度看待软件,把得到的白盒信息映射到已写完的黑盒测试案例上。数据流:观察变量,运行时的即时值(黑盒主要关注开始值和结束值)次边界:有些边界在软件的内部,最终用户几乎看不到,这样的边界条件称为次边界或内部边界条件,如临近字节边界的254,255,256.ASCII码表中A~Z,a~z之外的非法区间,如@,[,{,'错误强制:强制为变量赋值。不要设立现实世界中不可能出现的情况,如程序员在函数开头检查n值必须大于零,而n值仅用于该公式中,那么将n值设为零,使程序失败的测试用例就是非法的。公式和等式:例如分母不能为零,考虑有没有类似的情形,什么样的程序输入会导致它出现。代码范围:语句覆盖等的分析,单步执行查看(调用堆栈对话框查看);每条语句至少执行一次,路径、分支等的覆盖技术的提升是永无止境的,要想成为一个优秀的测试人员,在掌握技术的同时,也需要在不断实践中,在恰当的时机中,来合理地运用这些基本技术。静态白盒技术 通用代码审查清单一、数据引用错误。定义:是指使用未经正确初始化用法和引用方式的变量、常量、数组、字符串或记录而导致的软件缺陷。是否引用了未初始化的变量?查找遗漏之处与查找错误同等重要。数组和字符串的下标是整数值吗?下标总是在数组和字符串大小范围之内吗?在检索操作或者应用数组下标时是否包含“丢掉一个”这样的潜在错误?是否在应该使用常量的地方使用了变量一例如在检查数组范围时?变量是否被赋予不同类型的值?例如,无意中使代码为整形变量赋予一个浮点数值?为引用的指针分配内存了吗?一个数据结构是否在多个函数或者子程序中引用,在每一个引用中明确定义结构了吗?二、 数据声明错误。产生的原因:不正确地声明或使用变量和常量所有变量都赋予正确的长度、类型和存储类了吗?例如,本应声明为字符串的变量声明为字符数组了吗?变量是否在声明的同时进行了初始化?是否正确初始化并与其类型一致?变量有类似的名称吗?这基本上不算软件缺陷,但有可能是程序中其他地方出现名称混淆的信息。存在声明过、但从未引用或者只引用过一次的变量吗?在特定模块中所有变量都显式声明了吗?如果没有,是否可以理解为该变量与更高级别的模块共享?三、 计算错误。是基本的数据逻辑问题,计算无法得到预期结果。计算中是否使用了不同数据类型的变量,例如将整数与浮点数相加?计算中是否使用了不同数据类型相同但不同长度的变量一例如,将字节与字相加?计算时是否了解和考虑到编译器对类型或长度不一致的变量的转换规则?赋值的目的变量是否小于赋值表达式的值?在数值计算过程中是否可能出现溢出?除数/模是否可能为零?对于整型算术运算,某些计算,特别是除法的代码处理是否会丢失精度?变量的值是否超过有意义的范围?例如,可能性的计算结果是否小于0%或者大于100%?对于包含多个操作数的表达式,求值的次序是否混乱,运算优先级对吗?需要加括号使其清晰吗?四、 比较错误。小于、大于、等于、不等于、真、假。比较和判断错误很可能是边界条件问题。比较得正确吗?虽然听起来简单,但是比较应该是小于还是小于或等于常常发生混淆。存在分数或者浮点值之间的比较吗?如果有,精度问题会影响比较吗?1.00000001和1.00000002极其接近,它们相等吗?每一个逻辑表达式都正确表达了吗?逻辑计算如期进行了吗?求值次序有疑问吗?逻辑表达式的操作数是逻辑值吗?例如,是否包含整数值的整型变量用于逻辑计算中?五、 控制流程错误。原因:编程语言中循环等控制结构未按预期方式工作。它们通常由计算或者比较错误直接或间接造成。如果程序包含begin..end和do...while等语句组,end是否对应?程序、模块、子程序和循环能否终止?如果不能,可以接受吗?可能存在永远不停的循环吗?循环可能从不执行吗?如果是这样,可以接受吗?如果程序包含像switch...case语句这样的多个分支,索引变量能超出可能的分支数目吗?如果超出,该情况能正确处理吗?是否存在“丢掉一个”错误,导致意外进入循环?六、 子程序参数错误。来源于软件子程序不正确地传递数据。子程序接收的参数类型和大小与调用代码发送的匹配吗?次序正确吗?如果子程序有多个入口点,引用的参数是否与当前入口点没有关联?常量是否当作形参传递,意外在子程序中改动?子程序是更改了仅作为输入值的参数?每一个参数的单位是否与相应的形参匹配。如果存在全局变量,在所有引用子程序中是否有相似的定义和属性?七、 输入/输出错误。包括文件读取、接受键盘或者鼠标输入以及向打印机或者屏幕等输出设备写入错误。软件是否严格遵守外部设备读写数据的专用格式?文件或者外设不存在或者未准备好的错误情况有处理吗?软件是否处理外部设备未连接、不可用,或者读写过程中存储空间占满等情况?软件以预期方式处理预计的错误吗?检查错误提示信息的准确性、正确性、语法或拼写了吗?八、 其他检查。软件是否使用其他外语?是否处理扩展ASCII字符?是否需要用统一编码取代ASCII?软件是否要移植到其他编译器和CPU,具有这样做的许可吗?如果没有计划或者测试,那么,移植性可能成为一个大难题。是否
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- GB/T 43758.2-2024智能网联汽车运行安全测试环境技术条件第2部分:半开放道路
- 人教版八年级物理上册《第二章声现象》章末测试卷含答案
- 酶解法促进海产品副产物资源化
- 高一化学成长训练:第三单元人工合成有机化合物
- 2024届四川省高考化学四模试卷含解析
- 2024高中地理第二章自然环境中的物质运动和能量交换1地壳的物质组成和物质循环课时作业含解析湘教版必修1
- 2024高考地理一轮复习第五单元地表形态的塑造练习含解析
- 2025高考数学考点剖析精创专题卷三-三角函数与解三角形【含答案】
- 起重机委托使用协议书范本
- 2024年温州科技职业学院高职单招语文历年参考题库含答案解析
- 危重症护理组组长竞聘
- 航空工程材料(第3版)课件 6有色金属
- 印刷厂厂长年终小结
- MOOC 工程图学-天津大学 中国大学慕课答案
- 园林景观工程关键施工技术、措施
- 谈谈微电影创作课件
- 《变革管理》课件
- 各元素离子半径
- 小学五年级数学上册寒假作业天天练30套试题(可打印)
- 地下管道三维轨迹惯性定位测量技术规程
- 特种设备锅炉日管控、周排查、月调度主要项目及内容表
评论
0/150
提交评论