本章节解释了常规代码评审配置选项(适用于提交前和提交后流程的选项)。
本章包含:
配置代码评审首选项
- 选择 Parasoft> 首选项 以打开首选项对话框。
- 如果你还没有这样做,请如下配置源代码控制首选项:
- 在首选项面板左窗格中,选择 Parasoft> Scope and Authorship 类别。
- 启用 Use source control (modification author) to compute scope。
- 在首选项面板左窗格中,选择 Parasoft> Source Control 类别。
- 指定团队源码控制资源库(请查阅 连接到源代码控制资源库)或启用 Use DTP settings 选项(请查阅 连接到 DTP)。
如果你还没有这样做,请如下配置团队服务器首选项(请查阅 连接到 Parasoft 团队服务器)。
- 建议在报告中心中存储代码评审数据,以提高存储效率。有关更多详情,请查阅 连接到项目中心 。
- (仅适用于桌面安装)在左窗格选择 Parasoft> Code Review 类别,然后完成代码评审设置,如下所示:
- DTP Settings
显示已配置的 DTP 服务器主机名。你可以禁用 Default 选项修改端口号。 - 常规设置
- 用户名:为当前用户输入一个唯一的代码评审名称。这里指定的用户名也应该在代码评审测试配置中指定。
- 在扫描器运行期间显示用户助理:这启用了一个用户助理,它允许你指定一个任务标识符、输入注释、指定评审优先级,并为每个代码评审运行输入一个特定的审阅者或监视器。这是用于预提交代码检查的。
- 每隔__分钟通知我最新或更新的评论:如果希望在需要评审代码和/或所编写的代码已被评审时得到警告,请选择此选项。建议使用此选项。
- 显示完成的任务:如果希望代码审查任务树显示已完成的任务和活动任务,请启用此选项并指定要显示的已完成任务的范围。例如,如果想查看过去一周内完成的所有任务,则选择 7 天。
- 比较编辑器
- 重用单比较编辑器:如果希望“代码评审”在同一编辑器中打开每个修订,请启用此选项。
- 在提交审查操作上关闭比较编辑器:如果希望在提交修订时关闭比较编辑器,请启用此选项。
- 显示结构变化:如果希望比较编辑器显示结构更改,请启用此选项。
- 显示抑制部分:如果希望比较编辑器显示分析中排除的代码的详细信息(如 Hiding Differences for Specific Pieces of Code所述),请启用此选项。
- 在左侧|右侧显示更新的源代码:指定比较编辑器中最新源文件的位置。
- 在现有项目中开放本地资源
- 使用源代码控制识别本地源代码:如果希望允许 Parasoft 使用源代码控制数据,以便更好地识别找到的源代码,请启用此选项。
- 不管本地源的路径何时与远程路径不同(只匹配单个源),始终打开:如果想强制 Parasoft 始终应用本地源路径(如果它与远程路径不同),请启用此选项。
- 显示警告时,文件已更改自问题创建:如果你想在代码评审任务过期时收到警告(例如,因为自创建代码评审任务以来已修改了当前源代码),则启用此选项。
- Appearance: 允许自定义代码评审任务树中使用的标签,并确定是否合并用于文件的多个修订的任务。
- DTP Settings
- (仅适用于桌面安装)在左窗格选择 Parasoft> Code Review> Team 类别,然后完成代码评审设置,如下所示:
- 常规设置:指示要使用默认工作流还是受限制的工作流。有关这些选项的概述,请参见 Workflow Overview。 如果愿意,可以使用属性键路径
/usr/{user}/codereview/workflow
和属性值restrict
直接在团队服务器上启用受限制的工作流。如果想恢复到默认工作流策略,请将属性值更改为default
(请参阅 DTP 文档中的“管理团队服务器数据”)。 - 从团队服务器导入任务到报告中心:通过在数据库中存储网络数据来优化性能。请查阅 Importing Code Review Data from Team Server to the Report Center Database。
任务类别:这允许你自定义评审员可以用来对其评论进行分类的类别列表。
- 常规设置:指示要使用默认工作流还是受限制的工作流。有关这些选项的概述,请参见 Workflow Overview。 如果愿意,可以使用属性键路径
7.单击 Apply 应用设置。
8.单击 OK 设置并保存设置。
为扫描配置测试配置
测试配置控制如何准备代码评审,适当的配置取决于你的团队是否具有预提交或提交后代码评审流程。
- 有关为 pre-commit 代码评审流程配置测试配置的详细信息,请参阅 配置和运行预提交代码审查扫描。
- 有关为 post-commit 代码评审流程配置测试配置的详细信息,请参阅 配置和运行提交后代码审查扫描。
隐藏特定代码段的差异
如果不希望比较编辑器显示在特定代码块中发生的差异:
- 请在代码中希望停止显示差异的地方添加
codereview-begin-suppress
注释。 - 请在代码中希望停止恢复差异报告的地方添加
codereview-end-suppress
注释。
默认情况下,对于相关的代码评审任务,被抑制的代码不会在差异中显示(例如,突出显示紧接在被抑制代码之后或之前的代码更改的差异)。如果以后想查看差异中被抑制的内容:
- 选择 Parasoft> 首选项 以打开首选项对话框。
- 在左窗格,选择 Parasoft> Code Review 类别。
- 启用 Show suppressed parts 选项。
排除未发布或跳过的评审
未发表的评审
如果测试进展选项卡报告评审没有发布,则说明你的配置有未定义的作者。
例如,假设你的代码评审结果如下:
扫描了两个文件并接受了两个修订,但是没有代码评审包要发布,因为扫描的代码由用户“pietrek”进行了修改。该用户没有在测试配置的 Code Review> Authors 选项卡中列出。
要纠正这个问题,请完成以下内容:
- 将作者添加到测试配置的 Code Review> Authors 选项卡。
- 要么指派审查员审阅该作者的所有代码,要么将审查员指派到该作者进行修订的源代码区域。
- 重新运行测试配置。
跳过评审
如果结果显示评审被跳过(使用未定义的用户和/或作者未匹配的路径),则说明修改后的代码没有正确分配给评审人员。
例如,假设你有以下结果:
并且你的报告表明了以下几点:
可以通过修改测试配置来解决这个问题,或者将该区域的代码分配给审查员,或者将审查员分配给该作者修改的所有代码。
了解如何创建代码评审包
每个代码评审包都是基于作者的更改(提交)定义的。
- 在提交后代码评审中,当每天运行自动扫描时收集更改。
- 在预提交代码评审中,代码作者指定包中应该包含哪些更改。
然后将映射到该作者的任何审阅者和监视器分配给包。如果包中包含来自其他评审人员或监视器设置为评审的项目区域的代码,那么这些评审人员/监视器也将被分配到这个包中。
如果创建了一个包,并且没有设置评审人员或监视器来评审相关的作者或项目区域,则不会为该包生成评审任务。
不为不同的路径(区域)创建单独的包。因此,分配到不同路径的审阅人员可能正在处理同一个包。他们应该自己决定要审查哪些路径。这维护了任务的完整性,这些任务可能分布在多个审阅人员分配的区域。如果检查人员希望查看包中的哪些文件与他匹配,因为它们属于“his”指定区域,那么代码检查视图中可以获得这些信息。
将代码评审数据从团队服务器导入报告中心数据库
在报告中心数据库中存储数据比在团队服务器中以平面文件的形式存储数据更有效。团队服务器存储支持向后兼容,但强烈建议使用报告中心存储。
将代码评审数据从团队服务器导入报告中心:
- 选择 Parasoft> 首选项。
- 打开 Parasoft> Code Review> Team。
- 单击 Import,然后完成打开的对话框。这允许你从指定的数据范围导入所有代码评审数据或仅导入包。如果导入了现有项,则会复制它们。
将一个代码评审包从团队服务器导入到报告中心数据库所需的平均时间大约为 30 秒。一个安全的估计是假设你每天可以导入大约 2880 个包。