静态测试
静态测试就是采用人工检测和计算机辅助静态分析的手段对程序进行检测。静态测试主要是包括文档和程序的静态测试。文档的静态测试就是以检查单的形式对文档的编写内容进行检测。而代码的检测就是采用桌面检查、代码审查、代码走查和静态分析。
桌面检查就是由程序员自行检查。这种桌面检查可以节省很多检查时间,但是这种检查难以避免主观片面性。
代码审查就是组织会审小组,小组首先充分阅读项目相关的材料后,进入审查流程。在审查流程中程序员应该说明相应功能模块和逻辑便于测试。在评审中会谈论和争议促进问题的暴露,从而能够很好的发现错误。并且
会后需要整理相应的资料。
代码走查跟代码审查差不多,只是代码走查是走一遍系统功能,在出现错误的时候,进行错误的记录和讨论。
静态分析就是对程序代码进行静态分析,主要是对控制流分析、数据流分析、接口分析和表达式分析。
控制流分析:使用控制流程图检查被测程序的控制结构过程;
数据流分析:使用控制流程图分析数据各种异常情况的过程,例如数据初始化、赋值或引用等;
接口分析:就是检查接口传入的参数、参数类型和返回的数据;
表达式分析:检查程序中表达式是否正确。
白盒测试
白盒测试也称为结构测试,是单元测试的阶段。测试人员完全清楚程序结构和处理算法,按照内部逻辑结构设计测试用例。具体的白盒测试方法有控制流测试、数据流测试和程序变异测试。
控制流测试就是逻辑覆盖测试,其中覆盖的测试方法有:语句覆盖、评定覆盖、条件覆盖、条件/评定覆盖、条件组合覆盖、修正的条件/评定覆盖和路径覆盖。
数据流测试就是对变量的定义和引用进行分析,可以发现的错误包括引用未定义的变量、未曾使用的定义、对未使用变量再次赋值、数组越界或推荐判断中的条件错误、不正常的程序执行路径、不可执行的代码等。
程序变异测试就是一种错误驱动测试,是针对某类特定的程序错误进行测试。
黑盒测试
黑盒测试就是功能测试。主要的测试手段有功能分解、等价类划分、边界值分析、判定表、因果图、状态图、随机测试、错误推测和正交实验法。
功能分解:就是把功能分解为小粒度的功能,然后进行小功能的测试
等价类划分:就是功能中数据的要求,制定有效等价类和无效等价了,例如:
输入条件 | 有效等价类 | 无效等价类 |
---|---|---|
地区码 | 空白(1),3位数字(2) | 有非数字字符(5),少于3位数字(6),多于3位数字(7) |
前缀 | 200~999之间的3位数字(3) | 有非数字字符(8),起始位为0(9),起始位为1(10),少于3位数字(11),多于3位数字(12) |
后缀 | 4位数字(4) | 有非数字字符(13),少于4位数字(14),多于4位数字(15) |
边界值分析:就是输入的数值最大、最小的范围内和超出的部分进行测试
评定表:就是制作相应的表格,表格中包含条件桩、动作桩、条件项和动作项。然后根据这些表进行测试
因果图:就是根据输入条件与输出结果之间的因果关系来设计测试用例
状态图:通过绘制相应的系统流程状态来进行测试
随机测试:测试输入数据是在所有可能输入值中随机选取
错误推测:主要是使用等价类划分和边界值分析技术规划出相应的测试用例,并进行测试
正交实验法:是从大量实验点钟跳出适量的、有代表性的点,应用正交表,合理的安排实验的一种设计方法
网友评论