PhpStorm 2025.2 Help

Codeception

PhpStorm 支持使用 单元功能验收测试的 Codeception 测试框架 (版本 2.2.0 及更高版本)。

开始之前

确保在 PhpStorm 的 PHP 页面中配置了 PHP 解释器,如 配置本地 PHP 解释器配置远程 PHP 解释器 中所述。

下载并安装 Codeception

在开始之前,请确保您的计算机上已安装 Composer,并按照 Composer 依赖管理器 中的说明在当前项目中初始化。

手动下载并安装 Codeception

  • Codeception 安装页面下载 codeception.phar ,并将其保存到项目根目录下,稍后将在该目录中使用 Codeception。

    您也可以将 codeception.phar 保存到其他位置,并 将其配置为包含路径。 无论哪种情况,PhpStorm 都会将 codeception.phar 包括在索引中,因此可以成功解析对 Codeception 类的引用,从而为您提供完整的编码支持。

使用 Composer 下载并安装 Codeception

  1. composer.json 中,将 codeception/codeception 依赖项记录添加到 requirerequire-dev 键中。 要获取包名称和版本的代码补全,请按 Ctrl+Space

  2. 请执行以下操作之一:

    • 单击编辑器面板顶部的 安装 快捷链接。

    • 如果启用了 未安装的 Composer 包 检查,PhpStorm 将突出显示当前未安装的声明依赖项。 按 Alt+Enter 并选择是要安装特定依赖项还是一次性安装所有依赖项。

了解更多关于从 Codeception 官方网站安装 Codeception 的信息。

单击 设置按钮 ,位于 composer.json 编辑器边栏中的包记录旁边,将带您进入相应的 设置 页面,您可以在该页面 手动配置 Codeception

composer.json 中用于 Codeception 设置的边栏图标

在项目中将 Codeception 与 PhpStorm 集成

如果您使用 本地 PHP 解释器 ,PhpStorm 会自动执行初始的 Codeception 配置。 对于 远程 PHP 解释器 ,则需要手动进行 Codeception 配置。

生成 codeception.yml 配置文件

安装 Codeception 后,您需要通过生成 codeception.yml 配置文件来在项目中初始化它。

  • 打开内置的 PhpStorm 终端 Alt+F12 ,并在命令提示符下根据安装模式和当前操作系统输入以下命令之一:

    • 如果您在项目中安装了 codeception.phar ,请在 Windows 和 macOS 上输入 php codecept.phar bootstrap ,或在 Linux 上输入 codecept bootstrap

    • 如果您通过 Composer 全局安装了 Codeception,请为所有平台输入 codecept bootstrap

自动配置 Codeception

  1. codeception.yml codeception.dist.yml 配置文件存储在项目根目录下。

  2. 使用 Composer 安装 Codeception

PhpStorm 检测到已安装的 Codeception 可执行文件(如果项目中有 由 Composer 管理的子项目并指定了 Codeception 依赖项,则会检测到多个可执行文件),并在 测试框架页面上为每个已安装的 Codeception 可执行文件创建一个测试框架配置。

Codeception 配置

如果在项目(或子项目)根目录下自动检测到 codeception.yml codeception.dist.yml 配置文件,或者在 手动配置期间明确指定,PhpStorm 还会创建相应的 Codeception 运行/调试配置

Codeception 运行/调试配置

手动配置 Codeception

  1. 设置 对话框 (Ctrl+Alt+S) 中,前往 PHP | 测试框架

    在打开的 测试框架页面中,单击中央窗格中的 添加图标 ,并从列表中选择配置类型:

    ps_settings_php_test_frameworks.png
    • 在本地配置中,使用默认的项目 PHP 解释器。 有关更多信息,请参阅 默认项目 CLI 解释器

    • 要将 Codeception 与远程 PHP 解释器一起使用,请在打开的对话框中选择一个配置:

      ps_settings_php_test_frameworks_codeception_choose_php_interpreter.png
  2. Codeception 库 区域中,指定目标环境中 Codeception 可执行文件或 codeception.phar 存档的位置。 例如,如果您通过 Composer 安装了 Codeception,可执行文件存储在 vendor/bin/codecept 。 点击 重新加载按钮 字段旁的 Codeception 目录或 phar 文件的路径。 PhpStorm 检测到 Codeception 的版本并在字段下方显示。

  3. 测试运行程序 区域中,设置用于启动和执行场景的配置 YML 文件的路径。

    • 清除 默认配置文件 复选框,以便 Codeception 使用项目根文件夹中的 codeception.yml codeception.dist.yml 配置文件。 如果未找到此类文件,测试执行将失败。 因此,显式指定配置文件可能更可靠。

    • 选中 默认配置文件 复选框,以指定路径到 YML 文件,该文件将用作所有 Codeception 运行/调试配置中的默认配置文件。

为类生成 Codeception 测试

  1. 通过执行以下任一操作打开 创建新的 PHP 测试 对话框:

    • 转到 文件|新建。 然后,从上下文菜单中选择 PHP 测试 | Codeception 单元测试PHP 测试 | Codeception 功能测试

    • Project 工具窗口中,按 Alt+Insert 或右键单击要测试的 PHP 类,然后选择 新建 | PHP 测试 | Codeception 单元测试新建 | PHP 测试 | Codeception 功能测试

    • 在要测试的 PHP 类的编辑器中,将光标放在类的定义处。 然后,按 Alt+Enter 并从弹出菜单中选择 创建新测试。 通过这种方式,您可以为单个 PHP 文件中定义的多个类中的某个 PHP 类生成测试。

      要为某个方法创建测试,请将光标放在方法声明内。 所选方法将自动从 创建新的 PHP 测试 对话框中的方法列表中选中。

  2. 在打开的 创建新的 PHP 测试 对话框中,提供生成测试的参数。

    创建新 Codeception 测试对话框
    • 测试文件模板 :PhpStorm 将基于此模板生成测试类。 确保从列表中选择了 Codeception 单元Codeception 功能

    • 名称 :测试类的名称。 PhpStorm 会自动从生产类名称中组合名称为 <production class>Test.php (对于 Codeception 单元测试 )或 <production class>Cest.php (对于 Codeception 功能测试)。

    • 目录 :测试类文件的文件夹,基于生产类的包含目录和命名空间、配置的 测试源根及其 PSR-4 包前缀 ,或 testscodeception.yml配置文件中指定的值自动建议。

      要指定其他文件夹,请单击 “浏览”按钮 ,位于 目录 字段旁边,并选择相关文件夹。

    • 命名空间 :测试类所属的命名空间,基于生产类的包含目录和命名空间、配置的 测试源根及其 PSR-4 包前缀 ,或 namespacecodeception.yml配置文件中指定的值自动建议。

    • 成员 :要为其生成测试方法存根的生产类方法列表。 选中所需生产类方法旁边的复选框。 要包括从父类继承的方法,请选中 显示继承的方法 复选框。

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

创建测试后,您可以通过选择 导航 | 转到测试主体 导航回生产类。 更多信息请参阅 在测试和其测试对象之间导航

运行和调试 Codeception 测试

有关编写 Codeception 测试的更多信息,请参阅 单元测试验收测试功能测试

运行或调试 Codeception 测试

  • 在项目工具窗口中,选择要运行测试的文件或文件夹,并从所选内容的上下文菜单中选择 运行“<file or folder>”调试 '<file or folder>'

    ps_test_frameworks_codeception_launch_tests.png

    PhpStorm 会生成默认运行配置,并使用它启动运行或 调试测试会话。

保存自动生成的默认配置

  • 测试会话结束后,从运行小部件中相应的运行/调试配置的上下文菜单中选择 保存配置

通过先前保存的运行/调试配置运行或调试测试

  • 从工具栏上的列表中选择所需的 Codeception 配置,然后单击 “运行”按钮调试按钮

创建自定义运行/调试配置

  1. Project 工具窗口中,选择要运行测试的文件或文件夹,并从上下文菜单中选择 创建运行配置。 或者,转到主菜单中的 运行 | 编辑配置(E) ,然后单击 添加图标 并从列表中选择 Codeception

  2. 在打开的 Codeception 对话框中,指定要运行的场景,选择要使用的 PHP 解释器 ,并通过指定要传递给 PHP 可执行文件的选项和参数来自定义其行为。

监控测试结果

PhpStorm 在 测试运行器选项卡运行工具窗口 中显示测试执行结果。

ps_test_result_codeception.png

该选项卡分为两个主要区域:

  • 左侧区域允许您深入查看所有单元测试,以查看成功和失败的测试。 您可以筛选测试、导出结果,并使用上下文菜单命令运行特定测试或导航到源代码。

  • 右侧区域显示原始 Codeception 输出。

自动运行 Codeception 测试

当受影响的代码更改时,您可以让 PhpStorm 自动重新运行测试。 此选项是针对每个运行/调试配置配置的,可以应用于测试、测试文件、文件夹或测试的组合选择,具体取决于此运行/调试配置中指定的测试范围。

  1. 运行测试.

  2. 运行 工具栏上,单击 自动重新运行

    ps_phpunit_enable-auto-test.png
  3. 可选地,为在代码更改时启动测试设置时间延迟。 为此,请在 运行 工具栏上,单击 并选择 测试运行程序设置 | 设置自动测试延迟

    ps_phpunit_set-auto-test-delay.png
最后修改日期: 2025年 9月 26日