白盒测试的目的:通过检查软件内部的逻辑结构,对软件中的逻辑路径进行覆盖。
白盒测试策略:桌前检查、代码走查、单元测试、代码评审、同行评审。
常用的白盒测试用例设计技术:逻辑覆盖测试、循环覆盖测试、基本路径覆盖测试、数据流分析、信息流分析。
代码质量:三个指标来衡量软件质量。1.缺陷密度;2.顾客满意度;3.可靠性。
循环覆盖测试:简单循环、串接循环、嵌套循环、不规则循环。
逻辑覆盖测试:语句覆盖、判定覆盖、条件覆盖、判定-条件覆盖测试、条件组合覆盖、路径覆盖。
单元测试过程:计划、设计、执行、评审。
单元测试内容:1.功能点测试;2.覆盖率;3.模块接口测试;4.内部数据流测试。
语句覆盖:设计若干个测试用例,运行被测程序,使得每一条可执行语句至少执行一次。
分支(判定)覆盖:设计若干个测试用例,运行所测程序,使程序中每个判断的真假分支至少执行一次。
条件覆盖:设计足够多的测试用例,运行所测程序,使程序中每个判断的每个条件的可能取值至少执行一次。
分支-条件覆盖:设计足够的测试用例,使得判断中每个条件的所有可能取值至少执行一次,同时每个判断的真假分支至少执行一次,即要求各个判断的所有可能的条件取值组合至少执行一次。
条件组合覆盖:设计足够的测试用例,运行被测试对象,使得每一个判断的所有可能的条件取值组合至少执行一次。
路径测试:设计足够多的测试用例,覆盖被测试对象中的所有可能路径。
圈复杂度:1.圈复杂度V(G),定义为V(G)=E-N+2,E是流图中边的数量,N是流图中结点的数量。2.区域数+1;3.连接数出现2个以上的数个数。