当前位置:文档之家› 可靠性设计的白盒测试技术培训讲座教材

可靠性设计的白盒测试技术培训讲座教材

➢ 动态白盒测试也称为结构化测试,是在使用和运行程序的条件下, 软件测试员查看代码内部结构和实现方式来确定哪些要测试,哪些 不要测试,如何开展测试,怎样设计和执行测试用例。白盒测试的 覆盖标准有逻辑覆盖、循环覆盖和基本路径测试。动态白盒测试常 用的测试用例设计方法有逻辑覆盖法(逻辑驱动测试)和基本路径 测试法两种。
语句覆盖
语句覆盖
特点:语句覆盖要求设计足够多的测试用例,运行被测程序,使得程序 中每条语句至少被执行一次。在本例中,可执行语句是指语句块1到 语句块4中的语句。
白盒测试方法
➢ 简介
➢ 白盒测试主要是检查程序的内部结构、逻辑、循环和路径。测试是 基于覆盖全部代码、分支、路径、条件。根据测试程序是否运行, 白盒测试分静态白盒测试和动态白盒测试两种。
➢ 静态白盒测试也称为结构分析,是在不执行程序的条件下审查软件 设计、体系结构和代码,从而找出软件缺陷的过程。测试对象是文 档、代码等非计算机执行的部分。在项目中使用静态白盒测试是基 于这样的原则:错误发现得越早,改正错误的成本越低,正确改正 错误的可能性越大,改正错误时可能引发的其他错误的数量也越少 。静态白盒测试方法包括代码检查法、静态结构分析法、静态质量 度量法。常用的是代码检查法,这些方法在程序开始编码之后、基 于计算机的动态测试开始之前使用。
黑白灰区别
黑盒测试技术:也称功能测试或数据驱动测试,只关注规格说明中的功能,测试者在程序 接口对软件界面和软件功能进行测试,它只检查实现了的功能是否按照“用户需求说 明书”的规定正常使用,程序是否能适当地接收输入数据而产生正确的输出信息,并 且保持外部信息(如数据库或文件)的完整性。主要用于软件确认测试,结合兼容、 性能测试等方面,但黑盒测试不能保证已经实现的各个部分都被测试到。黑盒测试 适用于各阶段测试。
及模拟测试方法) ▪ 5.3、人机接口条件(操作者认知与习惯的潜在隐患防护
) ▪ 5.4、关联设备的相互影响(能量与信号输入输出的相互
潜在影响及模拟测试方法)
课程大纲
▪ 6、基于失效机理的应力测试 ▪ 6.1、常用器件、部件零件的失效机理和失效诱发应力 ▪ 6.2、针对失效机理的模拟测试用例设计
▪ 7、软件测试 ▪ 7.1、路径覆盖的测试用例设计方法 ▪ 7.2、数据覆盖的测试用例设计方法 ▪ 7.3、黑盒测试与白盒测试的测试用例设计方法
课程大纲
▪ 2、波形诊断 ▪ 2.1、电路常见异常波形的种类 ▪ 2.2、回勾波形的成因与应对措施 ▪ 2.3、过冲波形的成因与应对措施 ▪ 2.4、振荡波形的成因与应对措施 ▪ 2.5、平台波形的成因与应对措施 ▪ 2.6、塌陷波形的成因与应对措施 ▪ 2.7、鼓包波形的成因与应对措施
课程大纲
▪ 3、参数计算与审查 ▪ 3.1、WCCA参数分析 ▪ 3.2、容差计算 ▪ 3.3、蒙特卡洛分析方法 ▪ 3.4、降额审查 ▪ 3.5、热测试与计算 ▪ 3.6、常用各类电路里器件参数计算审查(电容、电感、
磁珠、电阻、开关管等)
课程大纲
▪ 4、一致性测试及测试数据分析 ▪ 4.1、批次数据分析 ▪ 4.2、正态分布的工程意义 ▪ 4.3、各种异化正态分布曲线的含义与机理 ▪ 5、单一故障分析与模拟测试 ▪ 5.1、设计调查表 ▪ 5.2、用户现场环境条件(环境对产品零部件的失效影响
▪ 8、器件质量控制测试 ▪ 8.1、光学检测 ▪ 8.2、参数测试与统计分析 ▪ 8.3、IV曲线测试
课程大纲
▪ 9、标准符合性测试 ▪ 9.1、通用标准测试项目 ▪ 9.2、安规(通用安规要求、安规测试判据、气、液、电
混合布局安规测试用例) ▪ 9.3、电磁兼容 ▪ 9.4、产品内部不同类型模块之间的相互影响检查与测试
电路可靠性设计的白盒测试技术讲座
讲师:Kenny
该课程常年循环开设公开课程,也可以引进企业进行内部培训。
课程简介
▪ 白盒测试的核心是波形诊断、器件参数分析、器件失效 机理激发等内容,通过对具体深入细节的测试测量,与预 期标准参数、波形对比,发现其中的隐患。
▪ 本课程着重从被测对象的隐患点、外部应力、过渡过程、 器件失效机理、工艺隐患等几个方面展开测试用例设计, 既讲解了测试用例的思考分析方法,又深入展开了细节的 具体问题点分析。
优缺点:代码检查法能快速找到缺陷,一旦发现错误,能够在代码中对其进行精确 定位,从而降低了错误修正的成本。代码检查看到的是问题本身而非问题的征 兆。但是代码检查非常耗费时间,而且代码检查需要知识和经验的积累。
代码审查和走查

两种方法的形成、流程一样,规程、方法不一样。具体来说:

代码审查和走查都是以小组为单位阅读代码,它是一系列规程和错误检
6. 12、组合应力测试 7. 现场多应力组合示例
1. 13、器件失效特征规律和故障原因分析方法 2. 13.1、电流应力与电压应力的故障特征区别 3. 13.2、突发浪涌应力与持续过电应力的故障特征区别
白盒测试概念
1、定义
白盒测试又称结构测试、透明盒测试、逻辑驱动测试、基于 代码的测试。盒子指被测试的软件 ,白盒指盒子是可视的。 白盒测试是一种测试用例设计方法,测试人员依据程序内部 逻辑结构相关信息,设计或选择测试用例。白盒测试主要针 对被测程序的源代码,主要用于软件验证,不考虑软件的功 能实现,只验证内部动作是否按照设计说明书的规定进行。
白盒测试概念
目的
我们一方面注重软件功能需求的实现,另一方面还要注重程序逻辑细节, 主要是因为软件自身的缺陷,具体如下: 1)逻辑错误和不正确假设与一条程序路径被运行的可能性成反比。日常 处理往往被很好地了解,而“特殊情况”的处理则难于发现。 2)我们经常相信某逻辑路径不可能被执行,而事实上,它可能在正常的 基础上被执行。程序的逻辑流有时是违反直觉的,只有路径测试才能发 现这些错误。 3)代码中的笔误是随机且无法杜绝的。笔误出现在主流上和不明显的逻 辑路径上的机率是一样的。很多被语法检查机制发现,但是其他的会在 测试开始时才会被发现。 4)功能测试本身的局限性。如果程序实现了没有被描述的行为,功能测 试是无法发现的,例如病毒,而白盒测试很容易发现它。
查方法的集合。审查或走查小组通常由不需要对程序细节很了解的协调
人员、程序的编码人员、程序的设计人员、测试专家四人组成。都是以
会议的形式进行。会议理想时间为90-120分钟之间,按照每小时阅读
150行代码的速度进行。对大型软件应安排多个会议同时进行,每个会议
处理一个或几个模块或子程序。

代码审查规程和方法:在代码审查表,作为下次代码审查的依据,并针对
错误修正进行跟踪。输出文档是“代码检查记录表”,此表主要内容日期、
住持人、参与人员、范围、发现的问题、问题处理、跟踪检查等。

代码走查规程和方法:在代码走查会议上,参与者参考“设计规格书”使用
计算机来执行代码。测试人员准备一些简单的测试用例,它的作用是提
▪ 通过本课程,可以快速积累测试经验、掌握测试项目的选 择和测试用例的设计方法,为企业产品通过测试把关的方 式实现产品可靠性短期内大幅度的提升保驾护航。
课程大纲
1、 测试基础 1.1、研发样机测试与中试样机测试的区别 1.2、原理验证和一致性验证的判据区别 1.3、测试的工具方法类型(模拟测试、仿真、工程计算、 规范审查) 1.4、基于单一故障的接口故障分析及测试模拟方法 1.5、测试覆盖率与MECE方法
白盒测试概念
▪ 目标 采用白盒测试必须遵循以下几条原则,才能达到测试的目标: 1)保证一个模块中的所有独立路径至少被测试一次。 2)所有逻辑值均需测试真 (true) 和假 (false) 两种情况。 3)检查程序的内部数据结构,保证其结构的有效性。 4)在上下边界及可操作范围内运行所有循环。
白盒测试概念
供 把启 测动 试代 数据码沿走程查序和的质逻疑辑程结序构员走逻表一辑2遍思,路程及序其的他状设态想记的录手在段纸。或在白会板议上期以间,
供监视。在大多数的代码走查中,很多问题是在向程序员提问的过程中
发现的,而不是由测试用例本身直接发现的。
桌面检查
桌面检查是一种传统的检查方法,由程序员检查自己编写的程序。程序 员在程序通过编译之后,对源程序代码进行分析、检验,并补充相关文 档,由于程序员熟悉自己的程序及其程序设计风格,桌面检查由程序员 自己进行可以节省时间,但应避免主观片面性。桌面检查的效果逊色于 代码检查和走查,但桌面检查胜过没有检查。
灰盒测试技术:在白盒测试中交叉使用黑盒测试、在黑盒测试中交叉使用白盒测试的方法。 它结合了白盒测试和黑盒测试的要素,涉及输入和输出,但使用关于代码和程序操 作等信息设计测试用例。灰盒测试通常用于集成测试。
测试是从用户需求的角度去对软件的质量进行检测。具体使用黑盒测试、白盒测试、灰盒 测试,不需要太明确的来划分,我们应该多角度去设计测试用例,多角度去测试软 件、发现bug,才是一个测试工程师应该具备的思想。总之,建议测试人员在测试 过程中,可以考虑先使用黑盒测试,然后统计相应的覆盖率,再设计适当的白盒测 试用例作为补充,以保证测试的完整性。
白盒测试技术:只关注软件产品的测试,深入到代码一级的测试,它是知道产品内部结构, 通过测试来检测产品内部动作是否按照“设计规格说明书”的规定正常进行,按照程 序内部的结构测试程序,检验程序中的每条通路是否都能按预定要求正确工作,主 要用于软件验证,不能够确保产品已经实现了规格说明中的所有功能。白盒测试通 常用于单元测试。
▪ 逻辑覆盖法:以程序内部的逻辑结构为基础的用例设计方法,它通过对 程序逻辑结构的遍历实现程序的覆盖。根据覆盖目标的不同,逻辑覆盖 分为语句覆盖、判定覆盖(分支覆盖)、条件覆盖、判定-条件覆盖(分 支-条件覆盖)、条件组合覆盖、路径覆盖六种覆盖测试方法。语句覆盖 每条语句至少执行一次。判定覆盖每个判定/分支至少执行一次。条件覆 盖每个判定的每个条件应取到各种可能的值。判定-条件覆盖同时满足判 定覆盖和条件覆盖。条件组合覆盖每个判定中各条件的每一种组合至少 出现一次。路径覆盖使程序中每一条可能的路径至少执行一次。它们发 现错误的能力呈由弱至强的变化。
相关主题