我们的构建过程涉及Git,Gerrit和Jenkins。如果Jenkins构建被破坏,则有人必须分析最新的提交并将修复任务分配给各个提交者。自上次稳定构建以来提交的所有开发人员也会收到一封电子邮件,但这只是说“构建已损坏”。
通过一些机器学习,似乎应该可以找到导致测试失败的“最有可能”的提交者。假设自上次稳定构建以来我有两次提交
Commit abcdef by Bob
Working on database reset logic
awesome-project/src/main/java/com/foobar/database/Reset.java
awesome-project/src/test/java/com/foobar/database/ResetTest.java
Commit abcdef by Fred
Add new VAT codes for Delaware
awesome-project/src/main/java/com/foobar/finance/VatTable.java
awesome-project/src/main/java/com/foobar/finance/VatLogicForDelawreImpl.java
awesome-project/src/test/java/com/foobar/statescenarios/DelawareTest.java
现在出现了构建失败
Stacktrace
java.lang.AssertionError: Expected <6> but was <7>
at com.foobar.finance.VatTableTest()
是否有插件可以归咎于Fred在为特拉华州添加新的增值税行后没有更新VatTableTest?从那个堆栈跟踪类,错误消息与提交消息和提交文件相结合,似乎应该是可能的(我很乐意接受“以下故障无法分配给特定提交”)
谢谢,西蒙
答案 0 :(得分:0)
目前,我们正在使用Email-ext插件,它可以选择发送: