如何标记回归

回归

对于 Mozilla-Central 中的回归错误,我们的策略是将错误标记为回归,识别导致回归的提交,然后将与这些提交相关的错误标记为导致回归的原因。

什么是回归?

回归是指由 变更集 引入的错误(在我们方案中为 defect)。

  • Bug 101 通过变更集 A 修复了 Bug 100

  • Bug 102 报告了先前正确行为现在不再发生的现象

  • Bug 102 经过调查发现是由变更集 A 引入的

标记回归 Bug

回归具有以下特征:

  • **Bug 类型** 为 defect

  • **关键字** 包括 regression

  • **Status_FirefoxNN** 对于发现该 Bug 的每个 Firefox 版本(当前 nightly、beta 和 release)都为 affected

  • Bug 的描述涵盖了先前正常工作但现在不再正常工作的行为。

在通过 mozregression 或其他二分查找工具找到导致回归的变更集之前,Bug 还应该包含 regressionwindow-wanted 关键字。

一旦确定了导致回归的变更集,请移除 regressionwindow-wanted 关键字,并将 **Regressed By** 字段设置为与变更集关联的 Bug 的 ID。

设置 **Regressed By** 字段将更新另一个 Bug 中的 **Regresses** 字段。

向导致回归的补丁作者发送 needinfo,要求他们修复或回滚回归。

旧方法

以前,我们过度使用 **Blocks** 和 **Blocked By** 字段来跟踪回归,将 **Blocks** 设置为与导致回归的变更集关联的 Bug 的 ID,并使用上面描述的 regressionregressionwindow-wanted 关键字和状态标记。

这使得在 Bugzilla 中查看依赖关系树时难以区分依赖关系和回归。

常见问题

待编写