白盒测试主要用于什么测试
白盒法测试主要用于测试程序内部逻辑。白盒测试又称结构测试、透明盒测试、逻辑驱动测试或基于代码的测试。白盒测试是一种测试用例设计方法,盒子指的是被测试的软件,白盒指的是盒子是可视的,即清楚盒子内部的东西以及里面是如何运作的。白盒"法全面了解程序内部逻辑结构、对所有逻辑路径进行测试。"白盒"法是穷举路径测试。在使用这一方案时,测试者必须检查程序的内部结构,从检查程序的逻辑着手,得出测试数据。贯穿程序的独立路径数是天文数字。"
白盒测试有几种方法
一般可分为:静态分析和动态分析两种方法。白盒测试又称结构测试、透明盒测试、逻辑驱动测试或基于代码的测试。白盒测试是一种测试用例设计方法,盒子指的是被测试的软件,白盒指的是盒子是可视的,你清楚盒子内部的东西以及里面是如何运作的。"白盒"法全面了解程序内部逻辑结构、对所有逻辑路径进行测试。"白盒"法是穷举路径测试。白盒测试并不是简单的按照代码设计用例,而是需要根据不同的测试需求,结合不同的测试对象,使用适合的方法进行测试。白盒测试用例设计的一个很重要的评估标准就是对代码的覆盖度。白盒测试中常见的覆盖方法有六种:语句覆盖、判定覆盖、条件覆盖、判定/条件覆盖、组合覆盖和路径覆盖。下面我们就分别看看这几种不同的覆盖吧。语句覆盖(StatementCoverage)主要特点:语句覆盖是最起码的结构覆盖要求,语句覆盖需要选择足够的测试用例,使我们设计出来的测试用例要保证程序中的每一个语句至少被执行一次。优点:可以很直观地从源代码得到测试用例,无须细分每条判定表达式。缺点:由于这种测试方法仅仅针对程序逻辑中显式存在的语句,但对于隐藏的条件和可能到达的隐式逻辑分支,是无法测试的。
什么是白盒测试?它的常用方法有哪些?
一、白盒测试
1.概念
白盒测试也称为结构测试或逻辑驱动测试,是针对被测单元内部是如何进行工作的测试。它根据程序的控制结构设计测试用例,主要用于软件或程序验证。
白盒测试法检查程序内部逻辑结构,对所有的逻辑路径进行测试,是一种穷举路径的测试方法,但即使每条路径都测试过了,但仍然有可能存在错误。因为:穷举路径测试无法检查出程序本身是否违反了设计规范,即程序是否是一个错误的程序;穷举路径测试不可能检查出程序因为遗漏路径而出错;穷举路径测试发现不了一些与数据相关的错误。
2.白盒测试需要遵循的原则
保证一个模块中的所有独立路径至少被测试一次;
所有逻辑值均需要测试真(true)和假(false),两种情况;
检查程序的内部数据结构,保证其结构的有效性;
在上下边界及可操作范围内运行所有循环。
3.常用白盒测试方法
静态测试:不用运行程序的测试,包括代码检查、静态结构分析、代码质量度量、文档测试等等,它可以由人工进行,充分发挥人的逻辑思维优势,也可以借助软件工具(Fxcop)自动进行。
动态测试:需要执行代码,通过运行程序找到问题,包括功能确认与接口测试、覆盖率分析、性能分析、内存分析等。
4.白盒测试中的逻辑覆盖
语句覆盖:语句覆盖每条语句至少执行一次。
判定覆盖:判定覆盖每个判定的每个分支至少执行一次
条件覆盖:条件覆盖每个判定的每个条件应取到各种可能的值。
判定/条件覆盖:.判定/条件覆盖同时满足判定覆盖条件覆盖
条件组合覆盖:条件组合覆盖每个判定中各条件的每一种组合至少出现一次。
路径覆盖:路径覆盖使程序中每一条可能的路径至少执行一次。
六种覆盖标准发现错误的能力呈由弱到强的变化。