`
bingtears
  • 浏览: 188394 次
  • 性别: Icon_minigender_2
  • 来自: 北京
社区版块
存档分类
最新评论

【ZZ】白盒测试实例——单元测试的步骤

阅读更多
白盒测试实例——单元测试的步骤
关键字: 白盒测试 步骤

白盒测试与黑盒测试的过程和方法是有一些区别的。

  单元测试的步骤:

  1、 理解需求和设计

  理解设计是很重要的,特别是要搞清楚被测试模块在整个软件中所处的位置,这对测试的内容将会有很大的影响。需要记住的一个原则就是:好的设计,各模块只负责完成自己的事情,层次与分工是很明确的。在单元测试的时候,可以不用测试不属于被测试模块所负责的功能,以减少测试用例的冗余,集成测试的时候会有机会测试到的。

  举例:

  1. /*

  2.

  3. * 判断三条边是否能够组成三角形

  4.

  5. * 返回值:true-是; false-否

  6.

  7. */

  8.

  9. bool isTriangle(int a, int b, int c);

  测试该函数的时候,只需要测试三条边(在合法的取值范围内的整数)是否能够满足两边之和是否大于第三边的功能,而不需要测试三条边是否在合法的范围(0, 200)之间的整数,因为调用该函数之前,一定要先通过下面函数的检查,要是检查不通过,就不会执行isTriangle函数。

  1. /*

  2.

  3. * 判断三条边是否合法(即:判断三条边都在合法的范围内)

  4.

  5. * 返回值:true-是; false-否

  6.

  7. */

  8.

  9. bool isLegal(int a, int b, int c);

  所以,单元测试主要是关注本单元的内部逻辑,而不用关注整个业务的逻辑,因为会有别的模块去完成相关的功能。

2、 概览源代码

  浏览一下源代码,主要任务:

  (1)初步检查源代码的编码风格与规范

  (2)大致估算测试工作量,比如:需要多少的测试用例、需要写多少的驱动模块和装模块等。

  (3)确定模块的复杂程度,初步制定测试的优先级等。

  3、 精读源代码

  认真阅读和分析代码,主要任务:

  (1)理解代码的业务逻辑。

  (2)检查代码与设计是否相符,如果详细设计没有该模块的流程图的话,先去画出流程图。

  (3)仔细研究逻辑复杂的模块

  (4)可以采用一些检查列表来检查程序可能会出现的问题。如果没有检查列表,那么,可以根据程序的特点,有针对性地检查容易出问题的地方(记得把经验总结下来供下次使用)。

  4、 设计测试用例

  综合运用白盒测试方法(和结合黑盒测试方法)来设计测试用例,包括功能测试、性能测试等,要达到一定的测试覆盖率。在设计测试用例的过程中,流程图或控制流图是分析的好帮手。

  5、 搭建单元测试环境

  使用XUnit或自己写的框架将有助于单元测试的实施。在这个阶段主要就是写桩模块和驱动模块,第4步所设计的测试用例是通过驱动模块传递给被测试模块的,然后驱动模块想办法获取被测试模块对数据的处理结果,并判定返回的实际结果与测试用例的预期结果是否一致,通过测试框架来记录执行的结果,对于出现的错误,还需要统计错误的信息,供执行完之后分析。

  搭建单元测试环境要避免在main函数中使用printf和scanf函数来跟测试人员交互来达到获取测试用例数据的信息。这样的测试还是没有摆脱手工测试方式,效率是低下的。同时,对于测试结果是否通过测试也不要使用printf方式打印被测试函数的返回结果值,避免要人工去检查结果。

  6、 执行测试

  运行写好的驱动模块完成对被测试模块的测试。

  7、 补充和完善测试用例

  单元测试也是个循序渐进的过程,可能一开始考虑的不够全面,或预期的覆盖标准太低,需要在测试过程中不断补充测试用例,直到满足要求为止。

  8、 分析结果,给出评价

  根据测试的结果分析、查找错误的原因,并找到解决的办法。测试结束之后,根据测试过程的数据统计,给出被测试对象评价。
分享到:
评论

相关推荐

    白盒测试方法与单元测试

    当进行单元测试时,开发者或测试人员会编写小规模的测试用例,这些用例直接针对代码的特定部分进行,而白盒测试提供了一种方法来深入这些代码的内部,确保其逻辑正确性。 白盒测试的分类包括多种方法: 1. **代码...

    白盒测试——三角形问题

    ### 白盒测试——三角形问题 #### 一、概述 本篇文档旨在对一个名为`triangle.cpp`的程序执行白盒测试。该程序的主要功能是根据用户输入的三条边的长度来判断是否能构成三角形,并进一步识别出是普通三角形、等腰...

    白盒测试实例方法和实现

    "白盒测试实例方法和实现" 白盒测试,也称结构测试或逻辑驱动测试,是一种测试用例设计方法,它从程序的控制结构导出测试用例。白盒测试使用被测单元内部如何工作的信息,允许测试人员对程序内部逻辑结构及有关信息...

    软件测试白盒测试实例

    软件测试白盒测试实例 白盒测试是软件测试中的一种常见方法,它以程序(模块)内部的逻辑结构为基础来设计测试用例,主要用于单元测试。白盒测试的优点是可以检查程序的内部逻辑结构,发现隐藏的 bug 和逻辑错误,...

    白盒测试——基本路径测试法

    在软件工程领域,白盒测试是一种不可或缺的测试方法,它要求测试者对软件的内部结构和工作方式有深入的了解。其中,基本路径测试法是白盒测试中的一种基础且高效的技术,它通过分析程序的控制流结构来设计测试用例,...

    白盒测试实例白盒测试实例

    ### 白盒测试实例解析与应用 #### 一、白盒测试的概念与目的 白盒测试,也称为结构测试或透明盒测试,是一种测试方法,它允许测试人员基于产品的内部结构和工作流程来进行测试。这种方法的主要目的是验证软件的...

    白盒测试教程,路径覆盖,逻辑覆盖,控制流图

    ### 白盒测试教程详解 #### 一、白盒测试概念 白盒测试,又称结构化测试或逻辑驱动测试,是一种软件测试方法,侧重于基于软件的内部逻辑和结构来进行测试。这种测试方法要求测试者了解被测软件的内部结构和实现细节...

    白盒测试实例之十——集成测试的概念[1]

    白盒测试实例之十——集成测试的概念[1]软件测试一、桩模块和驱动模块(以C语言为例):很多人对桩模块和驱动模块的概念会搞不清楚,下面先介绍这两个概念:模块结构实例图:假设现在项目组把任务分给了7个人,每个人...

    白盒测试实例之九——构建自己的单元测试框架(下)

    实例白盒 白盒测试实例之九——构建自己的单元测试框架(下) 软件测试 完整的源代码如下: 1、UnitTest.h 1./* 2.*Copyright(c)2008,胡添发 3.* 4.*简单的单元测试框架 5.* 6.*/ 7. 8.#include 9.#...

    白盒测试流程图1

    白盒测试流程图1提供了一种视觉化的方法来表示整个测试过程,通过清晰的步骤指导测试人员完成对软件内部的系统性检查,从检查开始表达式为空到输出结果结束,确保每一个环节都符合预期的逻辑性和功能性标准。...

    软件测试——单元测试

    这包括白盒测试(基于代码结构的测试)和黑盒测试(基于功能的测试),以及诸如断言、桩函数和驱动函数等技术来模拟依赖和验证结果。 单元测试的过程通常包括编写测试用例、执行测试、记录结果、调试错误和更新代码...

    软件测试 实验报告 白盒测试 三角形

    通过本次实验,学生能够深入了解白盒测试的概念和实践,学习如何创建控制流图,设计测试用例,并进行单元测试。此外,实验还强调了对软件文档、测试环境和工具的理解,以提高测试的效率和有效性。 总的来说,本实验...

    白盒测试实例分析.doc

    白盒测试实例分析.doc

    白盒测试单元测试理论精要

    白盒测试单元测试理论精要不仅涵盖了单元测试的基本概念,还深入到白盒测试的具体实践,包括如何设计测试用例、实现测试隔离以及如何选择和使用合适的测试工具。通过理解和应用这些理论,开发者能够更有效地提升代码...

    黑盒测试,白盒测试,系统测试三份实验报告.pdf

    在进行黑盒测试和白盒测试的过程中,测试人员需要依据相应的测试用例来执行测试,测试用例一般包括测试的输入数据、执行步骤、预期结果和实际结果等信息。测试人员需要详细记录测试过程中的所有发现,包括软件中存在...

Global site tag (gtag.js) - Google Analytics