首页 > 其他 > 详细

白盒测试

时间:2015-03-25 21:01:09      阅读:117      评论:0      收藏:0      [点我收藏+]

黑盒测试:已知产品应具有功能前提下,来检验每个功能是否符合规格说明书,都能正常使用;

白盒测试:已知产品源代码前提下,来检验程序是否按照预定要求运行;又称结构测试。

白盒测试的用例:1、保证模块中所有独立路径至少被执行一次;2、对所有逻辑值都会测试T / F;3、在上下边界及可操作范围内运行所有循环情况;4、检查内部数据结构以确保其有效性。

在软件测试过程中单元测试大都采用白盒测试。

测试方法

常见的白盒测试方法有代码检查、逻辑覆盖、基本路径测试。

代码检查(静态的白盒测试)

静态测试:不运行被测程序,互查、走查形式来进行审查,可以发现65%的缺陷。动态测试:运行、使用被测程序,发现问题。

代码规范性进行审查,格式、注释,提高代码可靠性、可移植性、易读性。

数据引用错误,是否引用了未初始化的变量;数组和字符串的下标是否为整数值且下标是否越界,变量是否被赋予了不同类型的值,是否为引用指针分配内存,一个数据结构是否在多个函数或子过程中引用,在每一个引用中是否明确定义了结构。

数据类型错误。变量数据类型是否定义错误,变量精度是否够,是否对不同数据类型进行比较或赋值。

数据声明错误。变量是否在声明的同时进行了初始化,是否正确初始化并与其类型一致,变量是否都赋予正确的长度、类型和存储类;变量名是否相似等。

计算错误。包括计算时是否了解和考虑到编译器对类型或长度不一致的变量的转换规则;计算中是否使用了不同数据类型的变量;除数或模是否可能为0,变量的值是否超过意义的范围,赋值的目的变量是否小于赋值表达式的值等。

逻辑运算错误。表达式是否存在优先级错误:每一个逻辑表达式是否都正确地表达,逻辑计算是否如期进行,求值次序是否有疑问,逻辑表达式的操作数是否为逻辑值等。

控制流程错误。程序中的语句组是否对应,程序、模块、子程序、循环能否终止,是否存在死循环,多分支语句,索引变量是否超过可能的分支数目,是否存在遗落的错误,导入意外进入循环。

子程序参数错误。子程序接收的参数类型和大小调用代码发送的是否匹配;子程序有多个入口点,引用的参数是否与当前入口点是否符合;常量是否当作形参传递,意外在子程序中改动;子程序是否更改了仅作为输入值的参数;每个参数的单位是否与相应的形参匹配;如果存在全局变量,在所有引用子程序中是否有相似的定义和属性等。

输入和输出错误。

其他错误。提示语、编码。

覆盖测试

以程序内部的逻辑结构为基础设计用例,要求对被测程序的逻辑结构了解,分为语句覆盖、判定覆盖、条件覆盖、判定、条件覆盖、组合覆盖、路径覆盖。

白盒测试

原文:http://www.cnblogs.com/stay-sober/p/4366517.html

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!