PhpStorm 2021.3 Help

贝哈特

使用 PhpStorm,您可以通过使用Behat框架运行场景来练习行为驱动的开发。目前 PhpStorm 支持与Behat 3Behat 2版本的集成。

PhpStorm 对 Behat 的原生支持包括:

  • 特征场景文件和PHP场景定义文件的识别和编码辅助。

  • 功能文件中的Gherkin语法支持: Feature, Scenario, Given, When, Then, And, 和But关键字。

  • 识别定义文件中的@given@when@then注释。

  • 根据 Behat 2.4 的PCRE标准和 Behat 3.0 的 PCRE+ 标准,通过正则表达式设置场景及其定义之间的对应关系。萝卜表达也很受欢迎。

在你开始前

确保在PHP 页面上的 PhpStorm中配置了 PHP 解释器,如配置本地 PHP 解释器配置远程 PHP 解释器中所述。请注意,Behat 3 需要 PHP 5.5 及更高版本。

下载并安装 Behat

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

手动下载 Behat 安装包

  • 从Behat下载页面下载behat.phar并将其保存在您的计算机上:

    • 如果除了运行 Behat 测试的能力之外还需要完整的编码帮助,请将behat.phar存储在项目的根目录下,稍后将使用 Behat。

    • 如果您只需要运行 Behat 测试并且不需要任何编码帮助,则可以将behat.phar保存在项目之外。

使用 Composer 下载并安装 Behat

  1. composer.json中,将behat/behat依赖记录添加到requireorrequire-dev部分。按Ctrl+Space以获得包名称和版本的代码完成。

  2. 执行以下操作之一:

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

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

点击composer.json设置/首选项按钮编辑器 gutter中包记录旁边的跳转到对应的Settings/Preferences页面,手动配置 Behat

composer.json 中 behat 设置的装订线图标

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

在项目中集成 Behat 和 PhpStorm

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

自动配置 Behat

  1. behat.ymlbehat.yml.dist配置文件存放在项目根目录下。

  2. 使用 Composer 安装 Behat

PhpStorm 将在Test Frameworks 页面Behat运行/调试配置上创建本地框架配置。

手动配置 Behat

  1. 设置/首选项对话框 ( Ctrl+Alt+S) 中,转到PHP | 测试框架

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

    ps_settings_php_test_frameworks.png
    • 在本地配置中,使用默认项目 PHP 解释器,请参阅默认项目 CLI 解释器了解详细信息。

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

      ps_settings_php_test_frameworks_behat_choose_php_interpreter.png
  2. Behat Library区域中,指定 Behat 可执行文件或behat.phar存档的位置。

    单击“ Behat 目录或 phar 文件重新加载按钮的路径”字段旁边的。PhpStorm 检测 Behat 的版本并将其显示在字段下方。

  3. Test Runner区域,指定配置YML文件以用于启动和执行场景。

    默认情况下, Behat在项目根文件夹或config文件夹中查找behat.yml配置文件。您可以指定自定义配置文件。

    • 清除默认配置文件复选框,让 Behat 使用项目根文件夹或config文件夹中的behat.yml配置文件。如果没有找到这样的文件,则测试执行失败,因此显式指定配置文件可能更可靠。

    • 选中默认配置文件复选框以指定您自己的YML配置文件。此文件稍后将在所有 Behat 运行/调试配置中用作默认文件。

      在该字段中,指定要使用的配置文件的位置。手动键入路径或单击浏览按钮并在打开的对话框中选择文件。

运行和调试 Behat 测试

有关编写Behat 功能的信息,请参阅Behat 文档

运行或调试 Behat 测试

  • 在 Project 工具窗口中,选择要从中运行测试的功能文件,然后从选择的上下文菜单中选择Run '<feature file>'Debug '<feature file>' :

    ps_test_frameworks_behat_launch_tests.png

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

保存自动生成的默认配置

  • 测试会话结束后,从文件或文件夹的上下文菜单中选择保存 <default_test_configuration_name>

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

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

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

监控 Behat 测试结果

PhpStorm在Run 工具窗口的Test Runner 选项卡中显示测试执行结果。

ps_test_result_behat.png

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

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

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

自动运行 Behat 测试

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

  1. 运行测试。

  2. Test Runner选项卡上,按切换自动测试按钮工具栏上的切换按钮:

    ps_phpunit_enable-auto-test.png
  3. 或者,单击设置按钮按钮并设置在代码更改时启动测试的时间延迟:

    ps_phpunit_set-auto-test-delay.png
最后修改:2021 年 8 月 27 日