无论您使用的是敏捷,Rational Unified Process(RUP)还是瀑布式开发方法,对开发期间执行多少代码的度量都是许多开发项目中的关键指标。 这对于开发人员和测试人员都非常重要,因为当开发人员生成具有高级别代码覆盖率的代码时,测试团队可以专注于代码是否满足业务目标,而不是被很多低级代码缺陷所困扰。
当代码覆盖量特别重要时
以下情况是代码覆盖率重要时的常见示例:
- 任何希望响应业务并以低风险方式进行更改的团队
- 正在开发代码并希望提供其工作质量的可见性或需要满足合同SLA的第三方
- 当一个项目定义了开发与测试之间的合同时,涉及到开发测试所覆盖的代码量,这意味着测试团队在捕获编码错误上花费的精力更少
- 希望能够在每个sprint(迭代)结束时制定决策发布代码的敏捷团队,因为这可以提高可交付成果的质量,因此不太可能在准备好将其投入生产之前就将代码移交
- 希望通过逐步增加单元测试数量和重构代码以减少错误和复杂性来减少技术负担的团队
- 希望建立度量标准程序以度量质量和技术债务的组织,以便可以发现趋势并尽早进行改进
许多敏捷团队面临的具体挑战之一是确保其单元测试涵盖大多数代码。 这对于确保开发人员创造尽可能少的缺陷以及代码可以重构至关重要。 (鉴于团队趋向于很少或根本不进行设计的趋势,至关重要的是要补充高质量的单元测试。)关键指标之一(除了所有测试都通过之外,)是拥有的代码量。涵盖了-这就是新版本的IBM®Rational®Application Developer可以提供帮助的地方。
今年早些时候,我写了一个原型扩展,用于集成IBM®Rational Team Concert™和Rational Application Developer。 如果没有足够的代码覆盖率(如Rational Application Developer中所述),它可以防止将代码交付给Rational Team Concert。 现在,该扩展名为Code Coverage Advisor,已正式合并到Rational Application Developer中,并且可以从8.0.3版开始使用。 这意味着您现在可以配置Rational Application Developer和IBM Rational Team Concert在允许交付代码之前检查您的代码覆盖率。 本文将引导您逐步进行设置,并向您展示如何在项目开发过程中使用它来增加代码覆盖率。
小费:
您需要了解Rational Application Developer的一些知识才能关注本文。
以下各节涵盖了这三个主题: