本章节解释了常规代码审查配置选项(适用于提交前和提交后流程的选项)。
本章包含:
配置代码审查首选项
- 选择 Parasoft> Preferences 以打开首选项对话框。
- 如果您还没有这样做,请如下配置源代码控制首选项:
- 在首选项面板左窗格中,选择 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 选项修改端口号。 - General Settings
- User name:为当前用户输入一个唯一的代码审查名称。这里指定的用户名也应该在代码审查测试配置中指定。
- Show user assistant during scanner run:这启用了一个用户助理,它允许您指定一个任务标识符、输入注释、指定审查优先级,并为每个代码审查运行输入一个特定的审阅者或监视器。这是用于预提交代码检查的。
- Notify me about new or updated reviews every ___ minutes:如果希望在需要审查代码和/或所编写的代码已被审查时得到警告,请选择此选项。建议使用此选项。
- Show completed tasks by:如果希望代码审查任务树显示已完成的任务和活动任务,请启用此选项并指定要显示的已完成任务的范围。例如,如果想查看过去一周内完成的所有任务,则选择 7 天。
- Compare Editor
- Reuse single compare editor:如果希望“代码审查”在同一编辑器中打开每个修订,请启用此选项。
- Close compare editors on commit review action:如果希望在提交修订时关闭比较编辑器,请启用此选项。
- Show structural changes:如果希望比较编辑器显示结构更改,请启用此选项。
- Show suppressed parts::如果希望比较编辑器显示分析中排除的代码的详细信息(如 Hiding Differences for Specific Pieces of Code所述),请启用此选项。
- Show the newer source on the left | right:指定比较编辑器中最新源文件的位置。
- Opening Local Sources in Existing Projects
- Use source control to recognize local sources:如果希望允许 Parasoft 使用源代码控制数据,以便更好地识别找到的源代码,请启用此选项。
- Always open without asking when path of a local source is different than remote path (single source matches only):如果想强制 Parasoft 始终应用本地源路径(如果它与远程路径不同),请启用此选项。
- Show warning when the file has been changed since issue was created:如果您想在代码审查任务过期时收到警告(例如,因为自创建代码审查任务以来已修改了当前源代码),则启用此选项。
- Appearance: 允许自定义代码审查任务树中使用的标签,并确定是否合并用于文件的多个修订的任务。
- DTP Settings
- (仅适用于桌面安装)在左窗格选择 Parasoft> Code Review> Team 类别,然后完成代码审查设置,如下所示:
- General settings:指示要使用默认工作流还是受限制的工作流。有关这些选项的概述,请参见 Workflow Overview。 如果愿意,可以使用属性键路径
/usr/{user}/codereview/workflow
和属性值restrict
直接在团队服务器上启用受限制的工作流。如果想恢复到默认工作流策略,请将属性值更改为default
(请参阅 DTP 文档中的“管理团队服务器数据”)。 - Import tasks from Team Server to Report Center:通过在数据库中存储网络数据来优化性能。请查阅 Importing Code Review Data from Team Server to the Report Center Database。
Task categories:这允许您自定义审查员可以用来对其评论进行分类的类别列表。
- General settings:指示要使用默认工作流还是受限制的工作流。有关这些选项的概述,请参见 Workflow Overview。 如果愿意,可以使用属性键路径
7.单击 Apply 应用设置。
8.单击 OK 设置并保存设置。
为扫描配置测试配置
测试配置控制如何准备代码审查,适当的配置取决于您的团队是否具有预提交或提交后代码审查流程。
- 有关为 pre-commit 代码审查流程配置测试配置的详细信息,请参阅 配置和运行预提交代码审查扫描。
- 有关为 post-commit 代码审查流程配置测试配置的详细信息,请参阅 配置和运行提交后代码审查扫描。
隐藏特定代码段的差异
如果不希望比较编辑器显示在特定代码块中发生的差异:
- 请在代码中希望停止显示差异的地方添加
codereview-begin-suppress
注释。 - 请在代码中希望停止恢复差异报告的地方添加
codereview-end-suppress
注释。
默认情况下,对于相关的代码审查任务,被抑制的代码不会在差异中显示(例如,突出显示紧接在被抑制代码之后或之前的代码更改的差异)。如果以后想查看差异中被抑制的内容:
- 选择 Parasoft> Preferences 以打开首选项对话框。
- 在左窗格,选择 Parasoft> Code Review 类别。
- 启用 Show suppressed parts 选项。
排除未发布或跳过的审查
未发表的审查
如果测试进展选项卡报告审查没有发布,则说明您的配置有未定义的作者。
例如,假设您的代码审查结果如下:
扫描了两个文件并接受了两个修订,但是没有代码审查包要发布,因为扫描的代码由用户“pietrek”进行了修改。该用户没有在测试配置的 Code Review> Authors 选项卡中列出。
要纠正这个问题,请完成以下内容:
- 将作者添加到测试配置的 Code Review> Authors 选项卡。
- 要么指派审查员审阅该作者的所有代码,要么将审查员指派到该作者进行修订的源代码区域。
- 重新运行测试配置。
跳过审查
如果结果显示审查被跳过(使用未定义的用户和/或作者未匹配的路径),则说明修改后的代码没有正确分配给审查人员。
例如,假设您有以下结果:
并且您的报告表明了以下几点:
可以通过修改测试配置来解决这个问题,或者将该区域的代码分配给审查员,或者将审查员分配给该作者修改的所有代码。
了解如何创建代码审查包
每个代码审查包都是基于作者的更改(提交)定义的。
- 在提交后代码审查中,当每天运行自动扫描时收集更改。
- 在预提交代码审查中,代码作者指定包中应该包含哪些更改。
然后将映射到该作者的任何审阅者和监视器分配给包。如果包中包含来自其他审查人员或监视器设置为审查的项目区域的代码,那么这些审查人员/监视器也将被分配到这个包中。
如果创建了一个包,并且没有设置审查人员或监视器来审查相关的作者或项目区域,则不会为该包生成审查任务。
不为不同的路径(区域)创建单独的包。因此,分配到不同路径的审阅人员可能正在处理同一个包。他们应该自己决定要审查哪些路径。这维护了任务的完整性,这些任务可能分布在多个审阅人员分配的区域。如果检查人员希望查看包中的哪些文件与他匹配,因为它们属于“his”指定区域,那么代码检查视图中可以获得这些信息。
将代码审查数据从团队服务器导入报告中心数据库
在报告中心数据库中存储数据比在团队服务器中以平面文件的形式存储数据更有效。团队服务器存储支持向后兼容,但强烈建议使用报告中心存储。
将代码审查数据从团队服务器导入报告中心:
- 选择 Parasoft> Preferences 。
- 打开 Parasoft> Code Review> Team。
- 单击 Import,然后完成打开的对话框。这允许您从指定的数据范围导入所有代码审查数据或仅导入包。如果导入了现有项,则会复制它们。
将一个代码审查包从团队服务器导入到报告中心数据库所需的平均时间大约为 30 秒。一个安全的估计是假设您每天可以导入大约 2880 个包。