• 软件测试技术
  • 软件测试博客
  • 软件测试视频
  • 开源软件测试技术
  • 软件测试论坛
  • 软件测试沙龙
  • 软件测试资料下载
  • 软件测试杂志
  • 软件测试人才招聘
    暂时没有公告

字号: | 推荐给好友 上一篇 | 下一篇

软件测试技术基础学习之测试覆盖率

发布: 2010-12-22 09:41 | 作者: 不详 | 来源: 领测测试网采编 | 查看: 742次 | 进入软件测试论坛讨论

领测软件测试网

  ○ 条件覆盖(Condition Coverage)率:每个条件操作数(Operand)可能的取值被测试所占的比例。

  ◆ 条件覆盖率=(条件操作数值被至少执行一次的数量)/(条件操作数值的总数)

  ◆ 条件操作符容易被确认,有助于自动化测试;

  ◆ 优于判定覆盖,但不能替代判定覆盖率

  ○ 条件判断覆盖(Decision Condition Coverage/Branch Condition Coverage)率:设计足够多的测试用例来满足判定覆盖率和条件覆盖率

  ◆ 判定条件覆盖率=(条件操作数值或判定结果至少被评价一次的数量)/(条件操作数值总数+判定结果总数)

  ◆ 便于自动化,优于条件覆盖和判定覆盖;

  ◆ 不是完整的覆盖,还应该考虑路径覆盖。

  ○ 路径覆盖(Path Coverage)率:设计足够多的测试用例,遍历程序的所有可能的路径

  ◆ 路径覆盖率=(至少被执行一次的路径数)/(总的路径数)

  ◆ 遇到复杂程序,循环次数多的时候,完成路径覆盖是很困难的,也没有包含判定条件覆盖。

  从上面的集中逻辑覆盖测试来看,它们相互补充,尽量达到被测试程序的100%,然而我们还是要明确测试是为了尽可能找出程序中的错误。却没有一种十全十美的测试方法来发现所有的错误,这也体现了测试的局限性。

  ● 功能覆盖(Function Coverage)率,属于黑盒测试范畴。

  ○ 需求覆盖:

  ◆ 需求覆盖率=(被验证到的需求数量)/(总的需求数量)

  ○ 接口覆盖/入口点覆盖:使得系统的每个接口被测试到。

  以上所说的覆盖率都是属于结构化覆盖率的范畴,但是在面向对象领域中却遇到挑战。

  面向对象的覆盖率:关于面向对象的一些特性的测试,如:多态性、继承性、封装性等。

  class Base{

  public:void foo(){helper();}

  void bar(){helper();}

  private:virtual void helper(){...};};

  class Derived:public Base{

  private:virtual void helper(){...}};

延伸阅读

文章来源于领测软件测试网 https://www.ltesting.net/

52/5<12345>

关于领测软件测试网 | 领测软件测试网合作伙伴 | 广告服务 | 投稿指南 | 联系我们 | 网站地图 | 友情链接
版权所有(C) 2003-2010 TestAge(领测软件测试网)|领测国际科技(北京)有限公司|软件测试工程师培训网 All Rights Reserved
北京市海淀区中关村南大街9号北京理工科技大厦1402室 京ICP备10010545号-5
技术支持和业务联系:info@testage.com.cn 电话:010-51297073

软件测试 | 领测国际ISTQBISTQB官网TMMiTMMi认证国际软件测试工程师认证领测软件测试网