【发布时间】:2023-04-01 12:04:01
【问题描述】:
我的团队的目标是尽量减少我们的构建被破坏的时间。
我们使用 CruiseControl.NET 进行持续集成。我想知道如何最好地回答以下问题:
“在最近的 {timespan} 中,{project-name} 花费了多少时间处于损坏状态?”
例如: “在过去的 1 个月里,我们的项目有多少时间处于损坏状态?”
CruiseControl.NET 是否有任何高级功能可以帮助在某种类型的报告或仪表板中的某处提供这些信息?
或者,您将如何解析 xml 工件文件以收集此信息?
【问题讨论】:
-
“我的团队的目标是尽量减少我们的构建被破坏的时间。”你为什么需要这个?请描述您可以使用此信息的场景。如果你有 10 小时的破碎状态或 3 天,它会给你什么?
-
Restuta:对于我们的团队来说,一个损坏的构建代表一个错误。我们在系统的各个级别都有一套自动化测试。当其中一个测试由于代码更改而失败时,这意味着我们添加了一个错误。错误是不可容忍的,我们希望将修复它们作为高优先级。拥有统计数据只是量化我们在实现快速处理和修复错误的目标方面的表现的一种手段。此外,我们使用 CruiseControl.NET 来部署我们的开发站点,因此只要构建被破坏,新的代码更改就不会反映在我们的开发站点上。我们希望让我们的开发网站保持最新状态。
-
Broken build count 恕我直言,这是一个比在此状态下花费的时间更好的指标。
-
赞成。我认为这是一个有效且有趣的问题。这类指标很有趣,尤其是如果轻率地考虑(即人们想要改进这个指标,因为他们是完美主义者和轻松的竞争者,而不是因为他们的人力资源经理是个白痴,他们的奖金会受到影响)。使用 Cruise Control API(或抓取或任何答案)也会很有趣。
-
我同意损坏的构建计数是一个很好的指标,但它与损坏的时间具有不同的含义。损坏的构建计数告诉我们引入缺陷的频率。在构建中断状态下花费的时间告诉我们我们对这些缺陷的响应速度。
标签: continuous-integration cruisecontrol.net report agile-processes