2. 局部数据结构测试

  模块的局部数据结构是常见的错误来源,应设计测试用例以检查以下各种错误:

  ● 不正确或不一致的数据类型说明。

  ● 使用尚未赋值或尚未初始化的变量。

  ● 错误的初始值或错误的默认值。

  ● 变量名拼写错或书写错?? 使用了外部变量或函数。

  ● 不一致的数据类型。

  ● 全局数据对模块的影响。

  ● 数组越界。

  ● 非法指针。

  3. 路径测试

  检查由于计算错误、判定错误、控制流错误导致的程序错误。由于在测试时不可能做到穷举测试,所以在单元测试时要根据“白盒”测试和“黑盒”测试用例设计方法设计测试用例,对模块中重要的执行路径进行测试。重要的执行路径指那些处在完成单元功能的算法、控制、数据处理等重要位置的执行路径,也指由于控制较复杂而易错的路径,有选择地对执行路径进行测试是一项重要的任务。应当设计测试用例查找由于错误的计算、不正确的比较或不正常的控制流而导致的错误,对基本执行路径和循环进行测试可发现大量的路径错误。

  在路径测试中,要检查的错误有:死代码,错误的计算优先级,算法错误,混用不同类的操作,初始化不正确,精度错误?? 比较运算错误、赋值错误,表达式的不正确符号?? >、>=;=、==、!=,循环变量的使用错误?? 错误赋值以及其他错误等。

  比较操作和控制流向紧密相关,测试用例设计需要注意发现比较操作的错误:

  ● 不同数据类型的比较。

  ● 不正确的逻辑运算符或优先次序。

  ● 因浮点运算精度问题而造成的两值比较不等。

  ● 关系表达式中不正确的变量和比较符。

  ● “差 1 错”,即不正常的或不存在的循环中的条件。

  ● 当遇到发散的循环时无法跳出循环。

  ● 当遇到发散的迭代时不能终止循环。

  ● 错误的修改循环变量。

  4. 错误处理测试

  错误处理路径是可能引发错误处理的路径及进行错误处理的路径,错误出现时错误处理程序重新安排执行路线,或通知用户处理,或干脆停止执行使程序进入一种安全等待状态。测试人员应意识到,每一行程序代码都可能执行到,不能自己认为错误发生的概率很小而不去进行测试。一般软件错误处理测试应考虑下面几种可能的错误:

  ● 出错的描述是否难以理解,是否能够对错误定位。

  ● 显示的错误与实际的错误是否相符;

  ● 对错误条件的处理正确与否;

  ● 在对错误进行处理之前,错误条件是否已经引起系统的干预等。