php - 每个 Behat 上下文的不同环境 (Symfony 4.x)

标签 php symfony testing yaml behat

我想通过模拟不同的配置(来自 yaml、xml、php 文件)来创建很多 Behat 功能。

支持 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

我将在上下文中手动加载内核。

有什么想法吗?

最佳答案

我猜你可以为每个环境定义不同的配置文件:

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

关于php - 每个 Behat 上下文的不同环境 (Symfony 4.x),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/54240423/

相关文章:

symfony - 使用 Doctrine2 扩展 Symfony2 中的实体

java - 如何将 Spring SecurityContext 传递给 RestAssured

PHP 系统测试 - 1600 行程序脚本

javascript - 导入 test.js 时 AVA 测试给出未定义

php - 如何使用 Laravel 4 将对象插入到 MongoDB 文档中

php - Symfony 和 Doctrine 使迁移无效

php - 如何将 SQL 连接传递给另一个 php

javascript - PHP symfony 4 ajax 表单提交

javascript - 称为 JSTree 的 JQuery 库用于制作嵌套的复选框

php - 来自用户帐户数据库的自动电子邮件