FxCop-TFS集成:如果FxCop失败,需要创建TFS bug到最后一次亲自检查

FxCop-TFS集成:如果FxCop失败,需要创建TFS bug到最后一次亲自检查,fxcop,tfsintegrationplatform,Fxcop,Tfsintegrationplatform,我们对FxCop与TFS2010的集成有具体要求。要求如下。 -在特定的时间间隔内执行build.in(已有方法) -在每次生成后运行FxCop。(这太简单了,大家都知道) -如果任何操作失败,则需要创建一个TFS错误项,并将其分配给上次签入该文件的人员 我们知道“门控签入”是最好的方式。但由于某些原因,我们不能采用这种方法。我们面临的挑战是针对每个文件的最后一个签入者创建bug 以前有人做过这种类型的解决方案吗?是否有任何可用于此目的的公共代码 提前感谢。这是通过对整个部分进行编码完成的。基本

我们对FxCop与TFS2010的集成有具体要求。要求如下。 -在特定的时间间隔内执行build.in(已有方法) -在每次生成后运行FxCop。(这太简单了,大家都知道) -如果任何操作失败,则需要创建一个TFS错误项,并将其分配给上次签入该文件的人员

我们知道“门控签入”是最好的方式。但由于某些原因,我们不能采用这种方法。我们面临的挑战是针对每个文件的最后一个签入者创建bug

以前有人做过这种类型的解决方案吗?是否有任何可用于此目的的公共代码


提前感谢。

这是通过对整个部分进行编码完成的。基本思路如下

  • 获取最新版本并运行exsting构建脚本(),该脚本也会生成pdb
  • 在构建脚本结束时,使用FxCopCmd启动FxCops,并将输出获取到xml文件
  • 解析xml并找出包含失败评论的xml消息节点
  • 从上述xml节点提取代码文件路径
  • 将文件路径映射到TFS路径(即c:\code到以$\code开头的TFS路径)
  • 查找上次签入的个人详细信息
  • 创建一个bug并将其分配给该人员
  • 这是特定于我们的项目的,在我们的项目中,由于大量代码库和高频代码签入,我们无法实现门控签入。但必须实施自动审查


    这可以结束

    关于最后一个更改每个文件的人的案例似乎非常具体,可能会有公开的实施,更常见的案例如您所述是带有门控签入的CI构建,其他选项是部署签入策略以在签入之前运行FxCop。使用api解决方案并不困难-您需要一个构建活动,该活动获取FxCop错误列表(或只是错误文件),并定位该项,从源代码管理历史记录中获取其最后签入,并为提交者创建错误。谢谢drk。我们开始使用TFS sdk进行开发。我们正在搜索任何公开可用的类似解决方案/代码,以便避免编码:-)。我唯一可以建议的项目是,但我怀疑他们是否会完全符合要求,但这可能是一个很好的示例和/或您自己努力的指南。您不知道如何做的部分:如果FxCop失败,则构建失败,如果生成失败,请创建工作项,和/或将工作项分配给上次签入的用户?感谢Nicole为我花费时间。正如我在之前的评论中所说,“我们正在寻找任何类似的公共解决方案,以便避免编码”。在整个过程中,没有任何部分在技术上具有挑战性。程序员现在有点懒了:-)