我已经开始使用VS2010的代码测量和分析功能;即代码分析,代码度量和代码覆盖。我已经详细介绍了如何运行这些工具(使用VS并通过命令行自动执行),并且还查看了结果。
我想知道是否有办法比较结果以更好地理解“进展”,这意味着代码质量如何持续改进?例如,我想比较先前构建的代码度量统计信息(xml结果文件),并将其与当前构建进行比较。
是否有可用的工具我不知道?现在我们正考虑将结果存储在excel中,并在我们进步时进行比较和绘制。
感谢任何人有任何想法。
由于
答案 0 :(得分:2)
免责声明我是所引用工具的开发者:使用工具NDepend,您可以编写Code Query over LINQ (CQLinq)来匹配任何代码指标的进化。例如,您可以从查询开始:
from t in JustMyCode.Types
where t.IsPresentInBothBuilds() &&
t.CodeWasChanged()
let tOld = t.OlderVersion()
let newLoC = t.NbLinesOfCode
let oldLoC = tOld.NbLinesOfCode
let newCC = t.CyclomaticComplexity
let oldCC = tOld.CyclomaticComplexity
let newCov = t.PercentageCoverage
let oldCov = tOld.PercentageCoverage
where newLoC > oldLoC || newCC > oldCC || newCov < oldCov
select new { t, newLoC, oldLoC, newCC, oldCC, newCov, oldCov }
...并在Visual Studio中获得即时结果。此类规则可以整合到您的CI TFS build process中,也可以显示在HTML+javascript report中。
答案 1 :(得分:0)
我所知道的唯一专用比较工具是我几年前创建的,可在http://finlogikfxcopstats.codeplex.com/获得。我不再负责其维护,我不确定它是否已针对FxCop 10.0进行了更新。但是,它的源代码是可用的,因此如果您需要,可以调整它...
TFS also offers some results tracking,可以从中生成历史报告。但是,我觉得它的方法很无用,因为它意味着你需要保持积压“活动”,这意味着你不能根据新问题使构建失败。