运行带代码覆盖率的测试
PhpStorm 提供了一个专用操作,用于运行带代码覆盖率测量的测试。
使用现有配置运行带覆盖率的测试
要使用先前创建的 运行配置运行带覆盖率的测试,请执行以下操作之一:
按 Alt+Shift+F10 打开 弹出窗口,选择所需的配置,单击其右侧的
,然后选择
覆盖。
从工具栏中,从配置列表中选择所需的运行配置,单击
展开其选项,然后选择
。

从项目视图运行带覆盖率的测试
要从 Project 视图运行一个或多个带覆盖率的测试,请执行以下操作:
右键单击特定的测试文件或包含所需测试的目录。
从上下文菜单中选择相应的运行命令,例如
。
从编辑器运行带覆盖率的测试
单击
运行 ,在所需测试类或方法旁边的边距中,然后从打开的上下文菜单中选择
。

如果在设置中选择了 在将覆盖应用于编辑器之前显示选项 复选框 Ctrl+Alt+S 覆盖率 ,将会出现一个对话框,您可以选择是替换活动覆盖率套件,将收集的数据添加到活动套件,还是不应用覆盖率数据。 您还可以选择在未来跳过此对话框。 如果选择了其他选项,将会静默执行相应的操作。
现在可以在 浏览收集的覆盖率数据于 覆盖率 工具窗口、 Project 工具窗口或编辑器中。
管理覆盖率套件
覆盖率套件是从某次特定运行收集的代码覆盖率数据的集合。 每个覆盖率套件存储的数据来源于单个运行配置(如果是 带覆盖率运行时)或来自 导入的覆盖率数据文件。
PhpStorm 将覆盖率套件存储在 coverage 文件夹的 IDE 系统目录中:
%LOCALAPPDATA%\JetBrains\PhpStorm%instance-version%\coverage
~/Library/Caches/JetBrains/PhpStorm%instance-version%/coverage
~/.cache/JetBrains/PhpStorm%instance-version%/coverage
PhpStorm 可以同时显示一个或多个覆盖率套件的结果,并且可以选择要显示的套件。 如果选择了多个套件,IDE 会显示它们的合并结果:也就是说,只要某一行代码在任一套件中被执行过,就会被视为已覆盖。
管理套件
在主菜单中,转到 (Ctrl+Alt+F6)。
在 选择要显示的覆盖率套件 菜单中:
使用复选框选择活动套件。 激活的套件定义了当前在 IDE 中显示的覆盖率数据。
使用
Add 导入外部套件文件,例如在 CI 服务器生成的或他人发送给您的文件。
请使用
移除 从列表中移除套件但保留存储中的文件。
使用
删除 从列表中移除套件并从存储中删除文件。
查看代码覆盖率结果
代码覆盖率结果会在 覆盖率 工具窗口、 Project 工具窗口以及编辑器中显示,前提是已运行至少一个带覆盖率的测试配置。

此外,这些结果会保存到 IDE coverage 文件夹中的 系统目录。
覆盖率工具窗口
覆盖率 工具窗口会在您运行带有覆盖率的测试配置后立即打开。 报告显示:
对于目录:已覆盖文件和行的百分比。
对于文件:已覆盖行的百分比。
覆盖率 工具窗口有以下选项:
项目 | 描述 |
|---|---|
如果此选项开启,PhpStorm 会自动在编辑器中打开所选项目。 否则,您需要双击项目才能打开它们。 | |
如果启用此选项,PhpStorm 将自动在工具窗口中定位您在编辑器中打开的文件。 | |
从磁盘导入覆盖率套件。 | |
过滤覆盖结果。 您可以选择仅查看具有未提交更改的类,关注最近的更新,或隐藏完全覆盖测试的类。 |
如果您想重新打开 覆盖率 工具窗口,请转到主菜单中的 ,或按 Ctrl+Alt+F6。
项目工具窗口中的代码覆盖率结果
Project 工具窗口显示:
对于目录:已覆盖文件和行的百分比。
对于文件:已覆盖行的百分比。
在编辑器中显示代码覆盖率结果
在编辑器中,代码行根据其代码覆盖率状态在边距中以颜色显示:
绿色(
):该代码行已被执行。红色(
):该代码行未被执行。
要查看特定代码行运行的次数,或从编辑器中隐藏覆盖率结果,请单击其边距颜色指示器。
