zoukankan      html  css  js  c++  java
  • 软件开发中的白盒测试

        今天,我们来谈谈软件开发过程中的白盒测试。   

    一、白盒测试的概念

      白盒测试(White Box Testing),按照程序内部的结构、逻辑驱动测试程序,通过测试来检测产品内部动作是否按照设计说明书的规定正常进行,检验程序中的每条路径是否都能按预定要求正确工作。白盒测试的对象主要是源程序。是指用代码内部的分支、路径、条件,使程序设计的控制结构导出测试用例。白盒测试是一个与黑盒测试相对的概念,是指测试者针对可见代码进行的一种测试。白盒测试通常再划分为单元测试、集成测试两大类,但依据不同的流程,对白盒测试细分的标准也不尽一致,比如在IBM的IPD流程之下,白盒测试可能划分为如下几类:模块单元测试、模块集成测试、模块系统测试、渐增Build集成测试、系统集成测试等。而在XP实践中,单元测试与集成测试之间的界限并不明显,统称为渐增迭代测试。

    二、白盒测试的特点

      白盒法特点:以程序的内部逻辑为基础设计测试用例,所以又称为逻辑覆盖法。应用白盒法时,手头必须有程序的规格说明以及程序清单。白盒法考虑的是测试用例对程序内部逻辑的覆盖程度。最彻底的白盒法是覆盖程序中的每一条路径,但是由于程序中一般含有循环,所以路径的数目极大,要执行每一条路径是不可能的,只能希望覆盖的程度尽可能高些。

    三、白盒测试的目的
      1)保证一个模块中的所有独立路径至少被执行一次;
      2)对所有的逻辑值均需要测试真、假两个分支;
      3)在上下边界及可操作范围内运行所有循环;
      4)检查内部数据结构以确保其有效性。
      5)提高代码的质量达到软件产品中要求的可靠性、安全性

    四、白盒测试的策略

      1)测试中,尽量先用自动化工具来进行静态结构分析;  

      2)auJ试中建议先从静态测试开始,如:静态结构分析、代码走查和静态质量度量后进行动态测试,如:覆盖率测试;

      3)利用静态分析的结果作为依据,再使用代码检查和动态测试的方式对静态分析结果进行进一步确认,提高测试效率及准确性;

      4)覆盖率测试是白盒测试中的重要手段,在测试报告中可以作为量化指标的依据,对于软件的重点模块,应使用多种覆盖率标准衡量代码的覆盖率;

      5)在不同的测试阶段,测试的侧重点是不同的。其中主要包含:

        (1)桌前检查(Desk Check)
        (2)单元测试(Unit Testing
        (3)代码评审(Code Review
        (4)同行评审(Peer Review
        (5)代码走查(Walkthrough
        (6)静态分析(Static Analysis

  • 相关阅读:
    ios 动画与2D、3D绘图
    ios UI设计与开发 按钮、图标和图片
    算法基础
    快速排序
    ios网络开发 同步下载和异步下载
    用C#调用Execl
    SQL函数大全
    出差
    窗体间的互操作
    垂直滚动条代码
  • 原文地址:https://www.cnblogs.com/caoyue/p/4440313.html
Copyright © 2011-2022 走看看