Различная среда для контекста Behat (Symfony 4.x) - PullRequest
0 голосов
/ 17 января 2019

Я хочу создать множество функций Behat с имитацией различных конфигураций (из файлов yaml, xml, php).

Официальное расширение для поддержки Symfony 4 - Symfony2Extension имеет поддержку для настройки другой среды, например:

default:
    # ...
    extensions:
        Behat\Symfony2Extension:
            kernel:
               class: App\Kernel
               bootstrap: config/bootstrap.php
               env: custom_env

Но это расширение загружается перед любым набором или контекстом. Я должен инициализировать ядро ​​для каждого отдельного контекста с различными конфигурационными файлами через env.

Как:

default:
    suites:
        default:
            contexts:
                params:
                    env: custom_env
                - FeatureContext:

или

default:
    suites:
        default:
            contexts:
                - FeatureContext:
                    env: custom_env

И я буду загружать ядро ​​вручную внутри Context.

Есть идеи?

1 Ответ

0 голосов
/ 18 января 2019

Полагаю, вы можете определить разные профили для каждого env:

default:
  # ...
  extensions:
    Behat\Symfony2Extension:
        kernel:
           class: App\Kernel
           bootstrap: config/bootstrap.php

php_profile:
  # ...
  extensions:
    Behat\Symfony2Extension:
        kernel:
           env: prod

yaml_profile:
  # ...
  extensions:
    Behat\Symfony2Extension:
        kernel:
           env: dev
...