zoukankan      html  css  js  c++  java
  • 单元测试

    一、单元测试主要内容
      1、测试对象:函数,函数是实现一个功能的独立的执行语句之和
      2、测试时间:开发完成一个函数。
      3、依据:LLD
      4、测试人员:开发


    二、支撑条件
      1、桩单元:用来调用被测函数所调用的函数,此子单元称为桩 单元,一般功能简单
      2、驱动单元:用来调用被测函数、并且接受其返回值的单元


    三、测试策略
      完成单元测试的顺序
      1、孤立的测试策略
        a、将每个函数单独执行测试
        b、每个函数的测试,都需要准备驱动和桩
        c、可以同时进行多个函数的单元测试,属于纯粹的单元测试
      
      2、自顶向下
        a、需要为该函数准备桩,在进行第二层函数测试时,可以利用顶层函数作为驱动
        b、需要大量的桩单元编写
        c、越向下测试越复杂

      3、自底向上
        a、需要为该函数准备驱动,在进行上一层函数测试时,可以利用底层函数(已经测试通过的)作为桩
        b、只需要准备驱动
        c、但是不是纯粹的单元测试,类似集成测试


    四、单元测试活动
      1、测试计划
      2、测试设计
      3、测试实现
        用例——脚本——数据——规程
      4、测试执行
        执行用例——回归测试——测试报告


    五、测试原则
      1、流程化:根据计划和方案设计
      2、计划、方案要参加评审
      3、回归测试:如果代码有改动,无论大小都要回归测试,必要时需要重新编写用例和脚本
      4、当发现问题,需要记录,进一步分析问题所在
      5、时间、测试轮次、覆盖率、bug的修复率,只有达到测试结束的标准,才能结束
      6、比较完备的单元测试要达到指定的覆盖率


    六、覆盖率
      覆盖率是用例度量测试的完备性的指标
      1、覆盖率=(至少执行一次的item数)/总的item数
        item:用来统计的测试项
        重复的item,只统计一次

      2、黑盒覆盖率:一般用功能点来做统计
      
      3、灰盒覆盖率:一般用函数覆盖率、接口覆盖率来统计

      4、白盒覆盖率:也叫逻辑覆盖率、代码覆盖率、结构覆盖率
       a、语句覆盖
       b、判定覆盖:每个判定均取真和假,真和假各统计一次item
          item总数:若判定数为n,则总数为2*n
       c、条件覆盖:每个判定中的条件均取真和假一次,判定中用逻辑运算符分割条件表达式,即为一个条件
          item总数:条件数*2
       d、判定条件覆盖:每个判定均取真和假,以及判定中的条件均取真和假
          item总数:条件覆盖item总数+判定覆盖item总数
       e、条件组合:每个判定中的条件取值要做全排列
          分母=判定1的条件取值的全排列组合+判定2的条件取值的全排列组合+......
       f、路径覆盖:每个路径均执行一次,即判定组合
          item总数=判定的n次方(n为判定的个数)
     
     
  • 相关阅读:
    icons、tabs、tabs2、toolbars例子详解
    list、listhorizontal、listsearch的理解
    forms、forms_toolbar例子理解
    Accelerometer
    audio,carousel的学习
    数组去空项,相同项
    require与include函数
    php下intval()和(int)转换使用与区别
    PHP需要拷到system32下的加载库及一些相关知识
    字符转义
  • 原文地址:https://www.cnblogs.com/tynam/p/9007405.html
Copyright © 2011-2022 走看看