Codeception 环境配置不起作用

Codeception environment configuration not working

Codeception:放置在 tests/_envs 中的配置文件不工作。我正在尝试 运行 我在多个环境中的验收测试(例如,dev、qa、staging、prod)。所以我在 tests/_env 目录下设置了 dev.yml、qa.yml、staging.yml 和 prod.yml 文件。我正在覆盖 WebDriver 的每个独立环境 - url.

文件 - dev.yml

modules:
    config:
        WebDriver:
            url: 'dev.mysite.local'

然后当我尝试 运行 使用其中一个环境的验收测试套件时,例如

./vendor/bin/codecept run acceptance --env dev 

它不会引入开发配置,而是使用 acceptance.suite.yml 文件中的默认配置。我做错了什么?

codeception/configuration.php 文件中存在错误,其中使用了错误的正则表达式,导致无法加载 .yml 文件。但是,dist.yml 文件加载正常。他们已经针对此错误进行了更改。

如果您没有这个 changeset,您可以在 codeception/configuration.php 文件中手动更改它,或者直接使用 dist.yml 扩展名。

错误的正则表达式:

$envFiles = Finder::create()
        ->files()
        ->name('*{.dist}.yml')
        ->in($path)
        ->depth('< 1');

更正:

    $envFiles = Finder::create()
        ->files()
        ->name('*.yml')
        ->in($path)
        ->depth('< 1');

感谢sjableka for the answer posted on the Codeception repo