1

我们考虑在不久的将来使用 Klocwork Insight 进行代码分析,并且只是将我们的源代码迁移到 Team Foundation Server 2010。
是否可以告诉 Klocwork为发现的问题创建工作项?还是我需要创建一个脚本来执行此操作?

TFS 2010 被列为“Klocwork Inspect 支持的软件配置管理 (SCM) 系统”,但这可能仅指从 TFS 获取代码的能力。可悲的是,该网站没有进一步详细说明。

关于这个话题的任何想法?提前致谢。


[编辑] 详细说明:
在 TFS 上投入生产后,可能会有一个初始阶段,即将工作区连接到 Klocwork 服务器并单独运行 Klocwork,只有自己的 IDE 来处理其输出。对于大问题,我们必须手动创建 WI,就像我们现在所做的一样(使用另一个问题工具)。

不久之后,我们可能会将 Klocwork 包含到我们每周构建的构建工作流程中,因此 TFS 至少会知道它的退出状态。我想如果 Klocwork “失败”,TFS 可以创建一个 WI,但是它可以为每个严重程度 x 及以上的问题或具有特定 ID 的问题创建一个 WI?

4

1 回答 1

1

没有对 Klocwork 的深入了解(我在另一份工作中有一些小经验,但它是一个 UX 世界 - 所以我的经验可能甚至不相关)我会说 TFS 应该可以做到这一点。

如果您计划将代码分析器用作构建的一部分,那么这很简单,因为您可以将工作项生成委托给 TFS 构建。唯一的先决条件是 Klocwork 可以作为控制台应用程序运行。

如果您想单独使用它,有两种可能性:(1) Klocwork 本身与 TFS 集成并可以自己生成您喜欢的项目,或者 (2) 它不是,您必须以编程方式创建您的 WI。

只要您详细说明您关注的变体,我可以为您提供任何一种选择。

[我们的代码分析器作为 TFS 构建的一部分运行,在我之前的工作中,Klocworks 也是构建的一部分。]

编辑 (基于下面的评论)使用“ InvokeProcess ”活动
调用 Klocworks 并捕获它产生的退出代码应该没有问题。如果它等于“失败”,那么使用已经提供的活动 OpenWorkItem 打开一个新的 WI 真的很简单(这里演示了它在不同情况下的用法)

如果您想在每个构建中打开多个 WI,事情可能会变得更复杂:“InvokeProcess”仍然存在,但是您必须将 Klocwork 输出解析为合适的<List>. 最后实现一个foreach包含 OpenWorkItem 的。痛苦应该是在构建过程模板中实现这个“解析”。

于 2011-08-17T19:01:52.397 回答