Unit testing 您的项目的代码覆盖率是多少?

Unit testing 您的项目的代码覆盖率是多少?,unit-testing,code-coverage,Unit Testing,Code Coverage,您的项目的代码覆盖率是多少?我很好奇为什么 开发团队对此满意吗?如果没有,是什么阻碍了它的增长 Stuart Halloway的项目目标是100%(否则构建失败!)。有人在那个级别吗 我们正处于痛苦的25%,但对于新代码,我们希望达到80-90%。我们有遗留代码,我们决定在它蒸发时不去管它(我们正在积极地重新编写)。我们以85%的代码覆盖率运行,但低于它不会破坏构建。我认为使用代码覆盖率作为一个重要指标是一种危险的做法。仅仅因为测试覆盖了某些内容并不意味着覆盖范围是好的。我们试图将其作为我们薄弱

您的项目的代码覆盖率是多少?我很好奇为什么

开发团队对此满意吗?如果没有,是什么阻碍了它的增长

Stuart Halloway的项目目标是100%(否则构建失败!)。有人在那个级别吗


我们正处于痛苦的25%,但对于新代码,我们希望达到80-90%。我们有遗留代码,我们决定在它蒸发时不去管它(我们正在积极地重新编写)。

我们以85%的代码覆盖率运行,但低于它不会破坏构建。我认为使用代码覆盖率作为一个重要指标是一种危险的做法。仅仅因为测试覆盖了某些内容并不意味着覆盖范围是好的。我们试图将其作为我们薄弱领域的指导,而不是硬事实。

80%是里程碑的退出标准。如果我们不能在冲刺阶段完成(即使我们确实提前计划了时间),我们会在稳定阶段完成。我们可能会对特定的组件或功能例外,但我们会为下一个里程碑打开Pri 1项

在编码过程中,代码覆盖率在每日构建中自动测量,并将报告发送给整个团队。低于70%的为黄色,低于50%的为红色。我们目前没有失败,但是我们有一个计划在下一个里程碑中添加这个

不确定开发人员的遭遇与单元测试有什么关系。开发人员被雇佣来构建高质量的产品,应该有一个过程来强制执行最低质量和衡量最低质量的方法。如果有人对这个过程不满意,他们可以在代码与其他组件集成之前,自由地提出另一种验证代码的方法


顺便说一句,我们还测量了自动化场景测试的代码覆盖率。因此,我们有三个成员—单元、场景和组合。

我经常在自动化测试套件下使用代码覆盖率,但主要是寻找未测试的区域。我们大部分时间的覆盖率都在70%左右,而且永远不会达到100%,原因有二

1) 我们通常会在发布后自动化新功能,该发布是针对其第一个版本手动测试的,因此不包括在覆盖率分析中。在我们的例子中,自动化主要用于功能回归,是执行和调整代码覆盖率的最佳场所

2) 故障注入需要获得100%的覆盖率,因为您需要进入execption处理程序内部。这是很难和耗时的自动化。我们目前没有这样做,因此永远不会得到100%。Jame的惠塔克斯(Whittakers)关于这一主题的书对任何感兴趣的人都有很好的介绍


还值得记住的是,代码覆盖率并不等同于测试覆盖率,这在SQA论坛上的和以上的线程中经常讨论。因此,100%的代码覆盖率可能是一个领先的指标。

几年前。到250个测试用例结束时,它达到了70%的代码和33%的完全测试分支

我们公司的目标是80%的语句覆盖率,包括异常处理代码。就个人而言,我喜欢在所有我登记的东西上都超过90%。

0%遗憾的是,在我们的工作场所。
将致力于改善这一点,但试图告诉老板我们需要它,这并不容易,因为他们看到了测试编码更少的钱。

我几年前做的一个项目实现了100%的线路覆盖率,但我完全控制了它,因此我可以强制执行目标。

我们现在的目标是覆盖50%的新代码,这个数字在不久的将来会上升,但无法衡量。我们很快就会有工具来测量每夜单元测试的代码覆盖率,所以我相信我们的情况会有所改善。

同样值得记住的是,100%的代码覆盖率只有在达到它之后才可能是一个误导性的指标。一旦你到了那里,你就可以考虑进一步提高你的测试覆盖率。欢迎你,不知道为什么它被否决了。可能我们不使用代码覆盖率进行构建验收。代码覆盖率虽然有用,但并不能支撑我们的测试或QA策略。我同意smacl。在我们的嵌入式汽车项目中,我们的目标是覆盖率达到80%。如果我们没有达到这个目标,我们需要调查并报告为什么我们没有达到这个目标。通常我们不会测试所有的失败案例,一些错误处理程序在我们的测试案例中不会被使用。事实上,这是事实。在国际海事组织,这是一个有用的工具,作为一个混合的一部分,谢谢你的答复,弗朗西。Re:happiness,我想问一下开发团队和管理层之间的紧张关系。i、 e.开发人员通常希望他们的覆盖率更高。@Michael Easter:我还没有到一个管理层会推动对产品进行更好的质量控制的地方工作。事实上,我并不想在这样的地方工作。这是一个艰难的销售,福瑟。当然,你和我都知道,测试==尽早发现bug==减少处理问题的费用。因为这是一个“三方”等式,所以通常很难与非技术人员联系起来。通常,缺少的20%中有什么?只是好奇,这是个很好的问题。我不能为别人的密码说话。在我看来,唯一没有涉及的语句是您被迫重写的方法,这些方法主要用于日志记录目的。