FxCop和代码分析规则



我最近开始在Visual Studio中的项目中使用代码分析。我创建了一个自定义规则集,用于我的所有项目,其中包括两个Microsoft定义的规则集。我一直致力于将FxCop集成到CI构建过程中,以使未通过所有规则的构建失败。对我来说真正奇怪的是,我不能使用我的规则集来定义FxCop扫描代码所依据的规则。如何使Visual Studio的代码分析规则与FxCop的规则相匹配?

您已经有了一个规则集文件,我认为您已经了解了如何在项目中集成并通过Visual Studio进行利用。

您可以在FxCopCmd.exe:中使用相同的规则集文件

FxCopCmd.exe /out:Violations.xml /ruleset:=Custom.ruleset /file:MyAssembly.dll

我用詹金斯做了这个,效果很好。运行不带参数的FxCopCmd.exe,您应该会看到所有可用命令行开关的描述。

对于我们的CI构建,我们有一个特殊的构建配置(除了标准的调试和发布),其中包括运行代码分析(我记得是"RunCodeAnalysis"MSBuild任务)和选项"将警告视为错误"。因此,如果我们有FxCop错误,并且它使用与VS相同的规则集,则构建会失败。这样,您就不需要使用FxCopCmd,并且可以共享规则集。但是您必须手动将此构建配置添加到解决方案的每个项目中。

相关内容

最新更新