0

我有由 Symfony 4 项目中的两个实体管理器管理的实体,我想从两个连接加载固定装置以进行功能测试。例如 :

class AdapterTest extends KernelTestCase
{
    use FixturesTrait;

    ...

    protected function setUp(): void
    {
        self::bootKernel();

        // Not working, just for example
        $this->loadFixtures([CounterFixtures::class], false, 'counter');
        $this->loadFixtures([CountryFixtures::class]);

        ...
    }

    ...
}

不幸的是,表被删除并且只加载与最后一个实体管理器连接相关的表。

我使用 LiipTestFixturesBundle v1.9.1。

这个捆绑包是否支持它,或者你知道我该怎么做吗?

4

1 回答 1

0

的第二个参数loadFixtures$append,它的值是false默认的。

它应该与以下代码一起使用:

class AdapterTest extends KernelTestCase
{
    use FixturesTrait;

    ...

    protected function setUp(): void
    {
        self::bootKernel();

        // Different entity manager but append = false so it clears the database
        $this->loadFixtures([CounterFixtures::class], false, 'counter');
        // Default entity manager but append = true so existing data is kept
        $this->loadFixtures([CountryFixtures::class], true);

        ...
    }

    ...
}
于 2021-01-18T14:47:46.927 回答