本主题解释如何设置和运行基于任务的代码审查过程,在此过程中,您可以提交与特定任务相关的文件进行代码审查。对于这些文件是否提交至源代码控制来说,这并不重要。 

本章包含:

相关主题

  • 有关预提交、后提交和任务驱动工作流的详细信息,请查阅 Workflow Overview
  • 有关常规代码审查配置选项(适用于提交前和提交后流程的选项,请参阅 常规代码审查配置

配置概要

配置任务驱动的代码审查需要:

  • 在所有团队 Parasoft 测试安装上设置适当的首选项,如 常规代码审查配置中所述。
  • 在一台机器上配置代码审查测试配置,并在整个团队中共享它,如下所述。

为任务驱动的代码审查配置测试配置

当团队成员准备审查与特定任务或一组任务相关的文件时,他指定应该审查哪些任务(或任务列表中的特定文件),然后运行任务驱动的代码审查测试配置。然后,这个测试配置为适当的文件准备一个审查。

建议从一个 SOAtest 安装中定制内置的 Code Review> Task Commit (Assign All) 测试配置,并与团队共享,以简化配置和更新。 

若要自定义内置的测试配置: 

  1. 通过选择 Parasoft> Test Configurations 或选择 Test Using 工具栏按钮上下拉菜单中的 Test Configurations ,打开测试配置对话框。
  2. 复制  Code Review> Task Commit (Assign All)
  3. 在 Scope 选项卡中,查看 File Filters> Path 选项设置,并根据需求对它们进行调整。关于测试配置设置的更多详情,请查阅 配置)。

  4. 如果报告首选项尚未设置为使用唯一的会话标记进行代码检查扫描,请进入 Common 选项卡,启用 Override Session Tag,然后选择其中一个预配置的标识符或指定自己的标识符。这个标签将被分配给所有源于这个测试配置的代码审查。
    • 为了确保正确的代码审查报告,您必须为代码审查扫描配置一个会话标记,并在项目中心中使用该会话标记,以指定哪些代码审查与特定的项目相关联。
  5. 根据需要,自定义 Code Review 选项卡设置。如果希望自动分配审查,请使用 Authors、 Reviewers、 Monitors和 Filters 选项卡来定义希望分配代码审查的方式。审查人员和监视器可以分配给特定的作者,或者分配给特定的项目区域。如果此处没有指定选项,则每个作者需要为每个提交的审查选择适当的审阅人。
    • 在 Authors 选项卡中,定义正在编写需要审查的代码的开发人员列表。对于每个作者,指定一个作者名称和一个源代码控制登录(如果作者的源代码控制登录与作者的名称不同)。
      • 作者列表可以包括所有开发人员,也可以只包括初级开发人员。
      • 如果没有在此选项卡中定义提交代码更改的开发人员,那么更改将被标记为来自“未定义的作者”。
      • 如果不希望定义每个开发人员,那么可以 1) 启用 Filter 选项卡的 Accept all (also undefined) authors for reviewed paths,2) 然后使用 Reviewers 选项卡来定义哪些审查人员应该审查代码的不同部分。
    •  Reviewers and Monitors 选项卡中,指定希望每个审阅者或监视器涵盖哪些作者和/或项目领域。
      • 审查员检查、评论和批准代码更改。监察员监督整个过程,以确保修订被及时审查和纠正。它们不需要执行任何审查,但是可以向修订或审查添加注释。这个角色是可选的。
      • 路径在逻辑(工作控件)路径规范中定义。允许使用通配符。有关详细信息和示例,请参阅下面的“Filter Tips and Examples”框。
      • 您可以定义审阅者和监视器,而不需要将它们映射到任何特定的路径或作者。这些用户不会被自动分配到任何包中,但是他们将被包含在报告中,并且作者将能够在“代码审查助手”对话框中选择他们。
  6. (可选)在 Code Review> Filters 选项卡中,如果需要,修改以下选项:
    • Ignore changes within suppressed blocks如果希望代码审查扫描忽略“codereview-begin-suppress”和“codereview-end-suppress”标记之间发生的所有差异,请启用此选项。这些标记与用于防止比较编辑器在特定代码块中显示差异的标记相同(关于更多详情,请查阅 Hiding Differences for Specific Pieces of Code )。
    • Differences如果您希望代码审查扫描忽略与特定模式匹配的所有当前源与先前源之间的差异,请在这里指定适当的正则表达式。例如,您可以使用它来防止自动生成的注释中的任何差异被标记为需要代码检查。
    • Accept all (also undefined) authors for reviewed path: 如果不希望定义每个开发人员,那么可以 1) 启用 Accept all (also undefined) authors for reviewed paths,2) 然后使用 Reviewers 选项卡来定义哪些审查人员应该审查代码的不同部分。
  7. 单击 Apply ,提交新的测试配置。
  8. 通过右键单击该选项,然后从快捷菜单选择 Upload to Team Server 以共享测试配置。

提交代码供审查

开发人员或架构师可以提交以下代码进行审查:

  1. 在质量任务列表中选择适当的任务节点,并运行指定的任务驱动的代码审查测试配置。

  2. 如果启用了代码审查首选项面板中的 Show user assistant during scanner run 选项(强烈推荐),那么将显示代码审查助手。


    • 您可以使用这个对话框:
      • 提供有关正在处理的任务的信息(然后将此代码审查与此任务相关联)。 
      • 您可以从任务列表中选择现有任务,或者输入任务名称来创建新任务。此信息用于确定您是否仍在处理现有任务,或者是否已经启动了新的任务。您的更改将在准备好的代码审查包中按任务分组。
      • 当您提交一个新任务供审查时,为提交的修订指定一个特定的审查人员或监视器。这允许您覆盖默认的审阅人/监视器分配,或者指定一个尚未分配的审阅人。
      • 提供审阅者或监视关于当前更改的附加信息。
      • 指明审查的优先次序。
  3. 如果您的代码审查测试配置没有启用 Auto publish reviews ,那么将结果上传至团队服务器,如下所示:
    1. 测试完成后,单击测试进度面板工具栏中可用的 Generate Report 按钮。
    2. 完成打开的报告对话框。

然后,将通知指定的审阅人员代码已准备好进行审阅。审查员可以按照 审阅者 - 审查代码修改中所描述执行审查。

审查完成后,作者可以按照 作者 - 审查和回应审查意见中所描述做出响应。

命令行使用说明

若要从命令行启动任务驱动的代码审查,请使用 -task 标志,然后使用相关任务的 ID。例如:

soatestcli.exe -data /demo -config "builtin://Task-Commit (Assign All)" -task 16042 

使用属性文件定义审阅者、作者和监视器

除了在测试配置中直接指定代码审查用户,并在代码审查助手对话框中“实时”添加审查人员之外,您还可以在 .properties 文件中定义代码审查用户。如果您的审查过程涉及大量的团队成员,并且您可以自动生成团队成员的数据库,那么这将非常有用。

有关更多详情,请查阅 Defining Reviewers, Authors, and Monitors with a Properties File 。 

  • No labels