TeamCity On-Premises 2024.03 Help

FxCop

FxCop 构建运行程序用于检查 .NET 程序集,并报告可能的设计、本地化、性能和安全性改进。 如果您希望 TeamCity 显示 FxCop 报告,您可以配置相应的构建运行程序,或者如果您更喜欢直接从脚本运行 FxCop 工具,可以通过服务消息导入 XML 报告。

要查看支持的 FxCop 版本列表,请参阅 支持的平台和环境

FxCop 构建运行程序设置

FxCop 安装

选项

描述

FxCop 检测模式

当构建代理启动时,它会自动检测是否安装了 FxCop 。 如果检测到 FxCop,TeamCity 会定义 %system.FxCopRoot% 代理系统属性。 您也可以使用自定义的 FxCop 安装,或者使用在您的版本控制中已检入的 FxCop。 根据所选内容的不同,下方显示的设置将会有所变化。

自动检测安装

选择在代理上使用 FxCop 安装。

FxCop 版本

选项在被选中时可用。 从下拉菜单中选择一个选项。 如果您的构建代理上安装了多个版本的 FxCop,建议在此选择一个特定版本的 FxCop 来运行您的构建中的检查,以避免不一致性。 因此,将会创建一个代理需求。 如果您保留字段的默认值('Any Detected'),TeamCity 将使用安装了 FxCop 的任何可用代理。 在这种情况下,一次构建中使用的 FxCop 版本可能与前一次构建中使用的版本不同,因此,发现的新问题数量将与实际状态不同。

指定安装根目录

选择使用自定义安装的 FxCop (而不是自动检测到的那个),或者如果您的构建代理上没有安装 FxCop (例如,您可以将 FxCop 工具放在源控制中,并与构建源代码一起检出)。

安装根目录

该选项在选中时可用。 在代理机上输入到 FxCop 安装根目录的路径,或者输入相对于Build Checkout Directory的 FxCop 可执行文件的路径。

应检查什么

选项

描述

程序集

输入需要检查的程序集的路径(使用 Ant 类型的通配符来通过掩码选择文件)。 FxCop 将使用默认设置对其进行检查。 路径应相对于 Build Checkout Directory 并通过空格分隔。 输入排除通配符以精细化包含的程序集列表。

请注意,由于命令行字符串限制,此处可以指定的程序集的最大数量存在限制。

FxCop 项目文件

输入相对于 Build Checkout Directory 的 FxCop 项目路径。

FxCop 选项

选项

描述

在 GAC 中搜索引用的程序集

在全局程序集缓存中搜索目标引用的程序集。

在目录中搜索引用的程序集

在指定的由空格分隔的目录中搜索目标引用的程序集。

忽略生成的代码

FxCop 1.36 中引入了一个新的选项。 加快检查速度。

报告 XSLT 文件

相对于 Build Checkout Directory 的 XSLT 转换文件的路径,或在 agent 机器上的绝对路径。 您可以在目标机器上使用检测到的 FxCop 的路径(即 %system.FxCopRoot%/Xml/FxCopReport.xsl)。 当设置了 Report XSLT file 选项时,构建运行程序将对 FxCop XML 输出应用一个 XSLT 转换,并在构建结果页面上的新 FxCop 选项卡中显示生成的 HTML。

附加的 FxCopCmd 选项

调用 FxCopCmd 可执行文件的额外选项。 所有输入的选项将被添加到命令行参数的开头。

生成失败条件

勾选此框,当指定的分析错误出现时,构建将失败。 点击 构建失败条件 来定义错误的数量。

使用 Service Messages

如果您更倾向于直接从脚本中调用 FxCop 工具,而非作为构建运行程序,您可以使用 importData 服务消息 来导入由 FxCopCmd 工具 生成的 XML 文件到 TeamCity。 在这种情况下,FxCop 工具的结果将出现在 构建结果页面的代码检查 选项卡中。

服务消息的格式如下所述:

##teamcity[importData type='FxCop' path='<path_to_the_xml_file>']
最后修改日期: 16日 7月 2024年