PhpStorm 2025.2 Help

生成 PHP 测试

在 PhpStorm 中快速创建新测试类的方法是使用专用的意图操作,您可以从源代码中调用该操作。 在这种情况下,IDE 会创建一个新的测试类文件,并为选定的 PHP 类生成测试存根。

此操作适用于 PHPUnitPestCodeceptionPHPSpec 测试框架。

添加新测试

  1. 在编辑器中,将插入符号放置在 PHP 类或您希望为其创建测试的方法声明中,按 Alt+Enter ,然后选择 创建新的 PHP 测试

    创建新的 PHP 测试 对话框打开:

    创建新的 php 测试 phpunit 对话框
  2. 创建新的 PHP 测试 对话框中,指定以下内容:

    • 测试文件模板 :用于生成测试类的框架模板。 PhpStorm 提供了用于生成测试类的 内置文件模板 ,支持以下测试框架: PHPUnitPestCodeceptionPHPSpec

    • 名称 :PhpStorm 会根据所选测试框架的命名约定,自动从生产类名称创建名称。 例如,对于 PHPUnit 测试文件,它是 <MyClass>Test.php

    • 目录 :测试类的文件夹,基于生产类的包含目录和命名空间、配置的 测试源根 及其 PSR-4 包前缀 ,或相应测试框架的配置文件中提供的值自动建议。 要使用路径补全,请按 Ctrl+Space 并从列表中选择路径。

    • 命名空间 :PhpStorm 可以根据配置的 PSR 包前缀 和框架特定配置文件中指定的值自动补全 命名空间。 要调用命名空间补全,请按 Ctrl+Space

    • 选中生产类方法旁边的复选框,生成测试方法存根。 要包括父类的继承方法,请选中 显示继承的方法 复选框。

      PhpStorm 将自动生成测试方法的名称,如 test<production method>。 您可以在 代码 选项卡的 文件和代码模板 设置页面上自定义用于生成测试方法存根的代码模板。

在测试和其测试对象之间导航

  1. 在编辑器中打开测试类或测试对象类。

  2. 从编辑器上下文菜单中选择 转到 | 测试对象 或按 Ctrl+Shift+T

    如果这个类只有一个测试,IDE 会立即将您导航到它。 否则,您将被提示从弹出窗口中选择必要的测试或 创建一个新测试

    从测试对象导航到测试

在 PHP 上下文中,使用 PHPUnitCodeception 测试时,您可以使用 @covers 注解来维护测试类或方法与其测试对象之间的链接。

这样,即使测试和测试对象的名称不遵循 PHPUnit 命名约定 ,也可以在测试和测试对象之间导航:

class Person { public function getAge() {} } /** @covers Person */ class TestForPersonClass extends TestCase { /** @covers Person::getAge */ public function testCorrectAgeIsReturned() {} }
最后修改日期: 2025年 9月 26日