主要有5点。

    1.模块接口测试。

    2.模块局部数据结构测试。

    3.模块边界条件测试。

    4.覆盖测试5.出错处理检测

    下面分别说明5点种的各个小点。

    1.模块接口测试中,我们应该注意。

    1.1模块输入参数的个数是否和形参相等。

    1.2模块输入参数的属性是否匹配。

    1.3模块输入参数的使用单位是否和形参的使用单位一致。

    1.4调用其他模块时,实际参数个数是否和被调参数个数一致。

    1.5调用其他模块时,实际参数属性是否和被调参数属性一致。

    1.6调用其他模块时,实际参数使用单位是否和被调参数使用单位一致。

    1.7在有多入口时,是否引用了当前入口中无关的参数。

    1.8是否修改了只作为输入值的形参。

    1.9各模块对全局变量的定义是否一致。

    1.10是否把某些常数当做变量定义来传递。

    如果有输入/输出,考虑下面:文件属性是否正确。

    open/close语句是否正确。

    缓冲区大小与记录值是否匹配。

    文件使用前是否已经打开

    文件结束条件是否正确。

    输入/输出错误处理是否正确。

    输入信息中是否有文字性错误信息。

    2.模块局部数据结构测试。

    2.1不正确或不相溶的类型说明。

    2.2不正确的初始化或缺省值。

    2.3不正确的变量名,如拼写错误和缩写错误。

    2.4上、下溢,地址异常。

    3.模块边界条件测试。

    边界测试是容易出错的地方,我们应该充分测试。

    这点我只举例说明

    比如,N维数组的第N个元素

    循环到后一次

    这里我们也可以运用我们黑盒测试中的边界值方法,虽然用例上不一样,但是思想上是一致的。我继续说明下,为什么?

    首先,我们知道了内部逻辑,不能用黑盒的方法去设计了。但是,我们可以这样去想象,一些可能和边界有关的数据类型,我们是不是应该考虑他的max,min,长,短,高,低。

    Z路径测试告诉我们是循环执行一次和不执行,但是循环后一次呢?他能迭代出我们要的数据吗?打个问号,至少我测试时发现后一次有时候取不到。

    4.覆盖测试运算符错用或误用。

    混合类型运算。大数据向小数据转换,没有加强转。

    初始化错误。

    计算精度不够。

    表达式中符号表达错误。

    不同数据类型进行了比较。

    逻辑运算符号和优先级使用错误。

    本身数据应该等,但是由于精度,却不相等。

    变量本身有错。

    不终止循环或终止不正确。

    迭代时不正确

    错误的修改了循环控制变量。

    5.出错处理检测

    运行发生的错误是否很难理解

    指明的错误于实际的错误是否一致

    出错后,并没有处理便直接引入系统进行。

    异常处理是否得当。

    错误描述中是否提供了足够的相关定位信息。