dependency-injection - 如何在 Symfony2 的 webtestcases 中获取 EntityManager

标签 dependency-injection symfony

我想知道如何在
WebTestCase 实例。

例如查看在测试运行期间是否真的在 DB 中创建了实体。

有什么想法吗?

最佳答案

您可以通过内核检索 DIC(依赖注入(inject)容器),内核是 WebTestCase 的 protected 成员。

您可以在 WebTestCase 中执行此操作:

$em = $this->kernel->getContainer()->get('doctrine.orm.entity_manager');

更新

根据您自己的评论,甚至有一个捷径(因为无论如何您都会有一个客户):
$client = $this->getClient();
$container = $client->getContainer();

原样 mentioned in the docs .

关于dependency-injection - 如何在 Symfony2 的 webtestcases 中获取 EntityManager,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/5716433/

相关文章:

asp.net - 如何在 ASP.NET 和 Windows 服务中使用相同的 DI 代码

c# - DBContext 不包含条目 : Cannot load related data 的定义

php - 发生验证错误时 Symfony2 表单字段未更新

mysql - Symfony 1.4 插入 : escaping values in custom SQL queries?

php - Symfony 3 - 自动序列化 DateTime 对象

php - PostgreSQL 中的 Doctrine ORM ArrayCollection

android - 使用 Hilt 进行依赖注入(inject)时,如何将运行时参数传递给 ViewModel 的构造函数?

android - 如何去除 Dagger Hilt 依赖注入(inject)周期

java - 摆脱Guice依赖

orm - Doctrine DQL QueryBuilder 排除存在关系的实体