调试途径

  ● 蛮干法:仅当所有其他方法都失败了得情况下才用

  ● 回溯法:从症状发现地方开始,人工沿着程序的控制流往回追踪分析源程序代码,知道找到错误为止,调试小程序有效的方法

  ● 原因排除法:

    ● 对分查找法:如果已经知道每个变量在程序内的若干个关键的正确值,则可以用赋值语句或输入语句在程序中的附近注入这些变量的正确值,然后运行程序并检查所得到的输出

    ● 归纳法:是从个别现象推断出一般性结论的思维方式,使用这种调试程序时,首先把和错误有关的数据组织在一起分析,以便发现错误原因

    ● 演绎法:从一般原理或前提出发,经过排除和精华的过程推导出结论,采用这样的方法,首先设想出所有可能出错的原因,然后试图用测试来排除每一个假设的原因

  两个重要测试技术

  白盒子技术

  目的:

  在测试者完全知道程序的结构和处理算法.按照程序内部的逻辑测试程序,检测程序中的主要执行通路是否都能按照预定的要求工作.又称机构测试.

  逻辑测试的覆盖种类:

  ● 语句覆盖: 至少每个语句都应该执行一次.

  ● 判断覆盖: 每种判断的每种可能的结果都因该至少执行一次.也是每个判断的分子都至少执行一次.

  ● 条件覆盖: 每个判断表达式的每个条件都取到各种可能的结果

  ● 判定条件覆盖: 有时候判断覆盖不一定包含条件覆盖,条件覆盖不一定包含判断覆盖.所以为了满足两种覆盖出现了这个覆盖.

  ● 条件组合覆盖: 选取足够多的测试数据,使的每个判断表达式中条件的各种可能组合都至少出现一次.

  ● 路径测试:选取足够多的测试数据.使程序的每条可能路径都被执行一次.

  ● 其他覆盖: 点覆盖/边覆盖

  三种基本测试:

  ● 基本路径测试步骤:

    ● 根据过程设计结果画出相应的流图

    ● 计算流程图的复杂度

    ● 确定线独立路径的基本集合

  ● 条件测试:

    ● 每个判断的分子都至少执行一次

    ● 每个判断表达式的每个条件都取到各种可能的结果

    ● 如果条件不正确,则至少条件的一个成分不正确

      ● 布尔运算符错

      ● 布尔变量错

      ● 布尔括弧错

      ● 关系算符错

      ● 算数表达式错

  ● 循环测试:

    ● 简单循环:

      ● 跳过循环

      ● 只通过一次循环

      ● 通过两次循环

      ● 通过m次循环(m

      ● 通过n-1次循环,通过n次循环,通过n+1次循环(n大允许循环数)

    ● 镶套循环:

      ● 从内层循环开始测试,把其他循环都设置为小值

      ● 对小层实行简单循环测试,而外层循环的迭代参数(如循环计数器)取小值,并为一些越界值.

      ● 由内向外,对下一个循环进行测试,但保持所有其他外层循环为小值。