RubyMine 2025.2 Help

代码覆盖率

使用 RubyMine,您可以通过 SimpleCov 分析工具测量代码的测试覆盖率。 您可以为任何支持的 测试框架 运行带覆盖的测试,分析单独工具窗口和编辑器中覆盖的文件和代码行的百分比,生成 HTML 报告等。

配置覆盖运行选项

RubyMine 允许您使用特定的运行选项运行带覆盖的测试。 例如,您可以从覆盖测量中排除特定文件夹。 要提供特定的覆盖选项,您需要为测试创建运行配置。 运行配置可以通过以下两种方式创建:

为测试创建运行配置后,您可以通过以下方式配置覆盖选项:

  1. Ctrl+Shift+A 并开始输入 编辑配置。 选择 编辑配置 并按 Enter

    查找操作
  2. 在打开的 运行/调试配置 对话框中,选择所需的配置(例如, RakeTest::Unit/Shoulda/MinitestRSpec ),转到 代码覆盖率 选项卡并指定所需的设置。

    运行/调试配置

运行配置的覆盖设置

选项

描述

"添加"按钮

定义代码覆盖分析的范围。 在打开的 添加模式 对话框中,输入以逗号分隔的 Ruby 正则表达式列表。 选择一种模式类型,定义匹配的文件是应包含在代码覆盖分析中还是排除在外。

示例: /config//bin/,/config/

"添加"按钮

单击此按钮以从列表中删除选定的模式。

编辑按钮

单击此按钮以更改选定的代码覆盖模式。

在测试文件夹中启用覆盖率(T)

启用此选项以在代码覆盖分析中包含测试文件夹(例如, test 规范 )。

启用分支覆盖率(SimpleCov >= 0.18)

使用此选项启用分支覆盖。 启用此选项后,您可以在编辑器中 查看结果 时看到部分覆盖的条件。

启用分叉进程的覆盖率(SimpleCov >= 0.19)

启用此选项以测量分叉进程的覆盖率。

配置覆盖测量

配置代码覆盖行为

  1. Ctrl+Alt+S 打开设置,然后选择 构建、执行、部署 | 覆盖率

  2. 定义如何处理收集的覆盖数据:

    • 在将覆盖率应用到编辑器前显示选项(S) :每次运行新的带代码覆盖的运行配置时显示 代码覆盖率 对话框。

    • 不应用已收集的覆盖(N) :丢弃新的代码覆盖结果。

    • 将有效套件替换为新套件(R) :丢弃活动套件,并在每次启动新的带代码覆盖的运行配置时使用新的套件。

    • 添加到有效套件(D) :每次启动新的带代码覆盖的运行配置时,将新的代码覆盖套件添加到活动套件中。

  3. 选中 激活覆盖率视图(V) 复选框以自动打开 覆盖 工具窗口。

更改覆盖率高亮的颜色

  1. Ctrl+Alt+S 打开设置,然后选择 编辑器 | 颜色方案 | 常规

  2. 或者,在点击边距中的覆盖指示线时打开的弹出窗口中单击 编辑覆盖率颜色按钮

  3. 在组件列表中,展开 行覆盖率 节点并选择一种覆盖类型:例如, 完全部分覆盖未涵盖

  4. 点击 前景色 字段以打开 选择颜色 对话框。

  5. 选择颜色,应用更改,然后关闭对话框。

配置代码覆盖率颜色

运行测试并生成覆盖率报告

RubyMine 允许您通过以下方式运行带覆盖的测试:

使用预定义配置运行带覆盖的测试

要使用已创建的 运行配置 运行带覆盖的测试,请执行以下操作之一:

  • Alt+Shift+F10 ,选择所需的配置,按右箭头键,选择 覆盖 ,然后按 Enter

  • 从主工具栏运行带覆盖的测试:

    1. 从主工具栏的列表中选择所需的运行配置。

    2. 单击 更多操作运行小部件 中,然后选择 带覆盖运行

      带覆盖运行

从项目视图运行带覆盖的测试

要从 Project 视图运行一个或多个带覆盖的测试,请执行以下操作:

  1. 右键单击特定的测试文件或包含所需测试的目录(例如, test 规范 功能 )。

  2. 从上下文菜单中选择相应的运行命令,例如, 运行“所有测试位于:<directory name>”并启用覆盖率

从编辑器运行带覆盖的测试

要从编辑器运行测试,请执行以下步骤:

  1. 单击所需测试或测试类左侧边距中的 运行 按钮。

    运行特定测试
  2. 从上下文菜单中选择所需的运行命令,例如, 运行“<test name>”并启用覆盖率

查看覆盖结果

运行测试 带覆盖后,RubyMine 以以下方式显示结果:

  • Project 视图中。

    项目视图中的覆盖结果

    在这里,您可以浏览项目并检查覆盖的文件和代码行的百分比。

  • 覆盖 工具窗口中。

    专用工具窗口中的覆盖结果

    您可以启用 单击导航 选项以自动在编辑器中打开选定的文件。 生成覆盖报告 按钮允许您基于覆盖结果生成 HTML 报告

  • 在编辑器中.

    使用边距中的颜色指示器检测未覆盖的代码行。

    编辑器中的覆盖结果

    要了解某行被命中多少次,请单击相应的颜色指示器。

    编辑器中的覆盖设置

    在打开的弹出窗口中,您可以单击 编辑覆盖颜色按钮 配置代码覆盖颜色,或通过单击 隐藏覆盖率 链接隐藏覆盖结果。 有关显示隐藏覆盖结果的更多信息,请参阅 管理覆盖结果

管理覆盖结果

在您 运行带覆盖的测试 后,RubyMine 会将结果保存到覆盖套件中。 覆盖套件允许您显示或隐藏特定的覆盖结果,合并多个报告,并删除不必要的结果。

查看特定套件的覆盖结果

  1. 在主菜单中,前往 运行 | 管理覆盖率报告 Ctrl+Alt+F6

  2. 选择要显示的覆盖率套件 对话框中,选择或取消选择所需的套件,然后单击 显示已选择的

    选择要显示的覆盖率套件

    RubyMine 打开 选定测试套件的覆盖结果。

从文件添加覆盖套件

假设从另一台计算机获取了包含代码覆盖信息的文件。 您可以从磁盘加载此文件并查看覆盖结果。

  1. 在主菜单中,前往 运行 | 显示覆盖率数据 Ctrl+Alt+F6

  2. 单击 "添加"按钮 并在打开的对话框中选择所需的 .json 文件。

生成 HTML 报告

RubyMine 允许您为 收集的覆盖结果 生成 HTML 报告。

  1. 在主菜单中,转到 运行 | 生成覆盖率报告 ,或单击 生成覆盖率报告按钮覆盖 工具窗口中。

  2. 生成覆盖报告 对话框中,指定生成的报告将存储的目录。 可选地,选择 在浏览器中打开生成的 HTML。 点击 保存

最后修改日期: 2025年 9月 26日