软件测试覆盖率分类之白盒覆盖率

  此次的千锋福利软件测试学习教程与覆盖率有关哦~学习

  一、定义:覆盖率是用来度量测试完整性的一个手段,同时也是测试技术有效性的一个度量。测试

  二、计算:覆盖率=(至少被执行一次的item数)/item的总数spa

  三、特色设计

  1)根据覆盖率数据,能够检测咱们的测试是否充分blog

  2)分析出测试的弱点在哪方面教程

  3)指导咱们设计可以增长覆盖率的测试用例,有效提升测试质量,可是测试用例设计不能一味追求覆盖率,由于测试成本随覆盖率的增长而增长。ci

27922db431d54e48a081eb9d35a8f1d8.png

  软件测试覆盖率分类it

  覆盖率按照测试方法大致上能够划分为三大类,即白盒覆盖(white-Box Coverage)、灰盒覆盖(Gray-Box coverage)和黑盒覆盖(Black-Box Coverage)。io

  白盒覆盖率(white-Box Coverage)软件

  白盒覆盖率中使用的较常见的就是逻辑覆盖率(Logical Coverage ),也叫代码覆盖率(Code Coverage)或者结构化覆盖率(Structural Coverage),咱们常见的逻辑覆盖包括:语句覆盖、断定覆盖、条件覆盖、断定条件覆盖、条件组合覆盖、路径覆盖。

一、语句覆盖(Statement Coverage)

  1)定义:在测试时,运行被测程序后,程序中被执行的可执行语句的比率。

  2)计算公式:语句覆盖率=(至少被执行一次的语句数量)/(可执行的语句总数)

  3)100 %语句覆盖率含义:在测试时,先设计若干个测试用例,而后运行被测程序,使程序中的每一个可执行语句至少执行一次。

  4)特色:语句覆盖能够检验每一个可执行语句,可是即便语句覆盖率达到了100 %,也会有缺陷发现不了,因此覆盖率只是咱们度量的手段。

二、断定覆盖(Decision Coverage)/分支覆盖率(Branch Coverage)

  1)定义:在测试时,运行被测程序后,程序中全部判断语句的取真分支和取假分支被执行到的比率。

  2)计算公式:断定覆盖率=(断定结果被评价的次数)/(断定结果的总数)

  3)100 %条件覆盖率含义:在测试时,先设计若干个测试用例,而后运行测试程序,使得程序中每一个判断的取真分支和取假分支至少经历一次,即判断的真假值均曾被知足。

  4)特色

  (1)若断定覆盖达到100 %,则语句覆盖必为100 %。

  (2)即便断定覆盖率达到了100 %,也会有缺陷发现不了。

三、条件覆盖(Condition Coverage)

  1)定义:在测试时,运行被测程序后,程序中全部判断语句中每一个条件的可能取值(真值和假值)出现过的比率。

  2)计算公式:条件覆盖率=(条件操做数值至少被评价一次的数量)/(条件操做数值的总数)

  3)100 %条件覆盖率含义:在测试时,先设计若干个测试用例,而后运行被测试程序,要使每一个判断中每一个条件的可能取值至少知足一次。

4)特色:覆盖条件的测试用例不必定覆盖断定。

  固然了,这篇文章中所展示的软件测试学习教程只是千锋教育教学内容的九牛一毛,若是您想要更多的软件测试学习教程,能够来咱们这儿看看啊~