测试环境中的Symfony PDO连接



我有一个在Docker安装程序上运行的symfony环境。通过docker-compose.yml(版本2(,我启动了几个容器。以下容器与此处相关:

PHPFPM、NGINX和MariaDB

如果我通过浏览器打开我的symfony项目,它成功地连接到我的数据库(在名为"mariadb"的容器上(。将显示数据库中表中的记录。 即使我执行控制台命令来更新我的数据库架构,它也会起作用,并且更改会应用于我的数据库。

现在我想编写功能/集成测试,对同一主机(mariadb(上的第二个数据库运行测试。

这是我尝试连接的方式:

$dsn = sprintf(
        'mysql:host=%s;port=%s',
        'mariadb',
        3306
    );
$pdo = new PDOConnection(
    $dsn,
    'otk_dbuser',
    'testpass'
);

但结果是以下消息:

SQLSTATE[HY000] [2002] php_network_getaddresses: getaddrinfo failed: Name or service not known
  /opt/project/vendor/doctrine/dbal/lib/Doctrine/DBAL/Driver/PDOConnection.php:47
  /opt/project/src/TestingBundle/Tests/DatabaseTestCase.php:56
  /opt/project/src/TestingBundle/Tests/DatabaseTestCase.php:18

你能给我一些帮助吗?

亲切问候麦克斯

忘了我刚才问的。我在 PHPStorm 中执行了功能测试。因此,PHPStorm 使用一个独立的 docker 容器,这与我的 docker-compose 设置无关。

哑巴我!

相关内容

  • 没有找到相关文章

最新更新