【发布时间】:2018-01-09 15:06:41
【问题描述】:
Symfony4 中的奇怪问题:Doctrine 有效,我可以使用 php bin/console doctrine:schema:create 验证架构、创建数据库等。但是我的 PHPUnit 测试没有连接。通过运行./bin/phpunit 我得到SQLSTATE[HY000] [2002] No such file or directory 异常。
我按照文档中有关启动内核的步骤进行操作: http://symfony.com/doc/current/testing/doctrine.html
我的代码:
class PersistingResultTest extends KernelTestCase
{
protected $em;
protected function setUp()
{
$kernel = self::bootKernel();
$this->em = $kernel->getContainer()
->get('doctrine')
->getManager();
}
public function testPersistingLogFile()
{
// Just a simple schema command to test connection
$tool = new SchemaTool($this->em);
$tool->createSchema($this->em->getMetadataFactory()->getAllMetadata());
}
protected function tearDown()
{
parent::tearDown();
$this->em->close();
$this->em = null; // avoid memory leaks
}
}
有人知道为什么会这样吗?一个错误?
编辑:
显然.env 文件没有被正确读取。我将DATABASE_URL 环境变量移动到doctrine.yml 文件中,现在它可以工作了。
【问题讨论】:
标签: php symfony doctrine-orm symfony4