monooso/craft-bolt

此包已被废弃,不再维护。未建议替换包。

加速你的Craft插件测试。

v0.1.1 2021-02-10 13:04 UTC

This package is auto-updated.

Last update: 2021-11-03 19:32:31 UTC


README

Latest Stable Version License

关于Bolt

Bolt可以加速你的Craft插件测试。这是一个有偏见且正在开发中的工具。你可能不应该使用它。

Bolt由两部分组成

  1. A Codeception模块,它是对官方 craft\test\Craft 模块的简单封装。
  2. A Codeception扩展,它加载你选择的SQL转储。

扩展依赖于模块。你可以不使用扩展而仅使用模块,但没有必要这么做。

要求

Bolt假定你正在使用Codeception 4。它已经与Craft 3.5和PHP 7.4进行了测试。

安装

使用Composer将Bolt作为开发依赖项安装

composer require --dev monooso/craft-bolt

配置

1. 替换Craft Codeception模块

Bolt Codeception模块是Craft Codeception模块的直接替代品。要使用它,只需将你的Codeception配置文件中任何对 \craft\test\Craft 的引用替换为 \Monooso\Bolt\BoltModule

例如

modules:
    config:
        \Monooso\Bolt\BoltModule:
            configFile: "tests/_craft/config/test.php"
            # Other config...

别忘了更新你的 *.suite.yml 文件。

步骤2:禁用数据库设置

Bolt扩展负责加载SQL转储,这意味着我们不需要Craft模块来设置数据库。相应地设置配置选项

modules:
    config:
        \Monooso\Bolt\BoltModule:
            cleanup: true
            transaction: true
            dbSetup: { clean: false, setupCraft: false }
            fullMock: false
            # Other config...

步骤3:启用和配置扩展

扩展需要一个配置设置,指定要加载的SQL转储。

为了方便,Bolt包括一个原始Craft 3.5站点的SQL转储。如下使用

extensions:
    enabled:
        - \Monooso\Bolt\BoltExtension
    config:
        \Monooso\Bolt\BoltExtension:
            dump: "bolt:3.5"

你也可以选择加载你自己的SQL转储,通过指定相对于项目根目录的路径

extensions:
    enabled:
        - \Monooso\Bolt\BoltExtension
    config:
        \Monooso\Bolt\BoltExtension:
            dump: "tests/_data/dump.sql"

最后,你可以指定多个转储文件,它们将按指定顺序加载。例如

extensions:
    enabled:
        - \Monooso\Bolt\BoltExtension
    config:
        \Monooso\Bolt\BoltExtension:
            dump:
                - "bolt:3.5"
                - "tests/_data/extras.sql"